[Push] update API reference, include getPushMessage function
authorJakub Skowron <j.skowron@samsung.com>
Fri, 10 Jun 2016 15:58:02 +0000 (17:58 +0200)
committerJakub Skowron <j.skowron@samsung.com>
Wed, 15 Jun 2016 09:09:35 +0000 (11:09 +0200)
Change-Id: I0eda93f78520d6259f6b710704f2db5ab9115365
Signed-off-by: Jakub Skowron <j.skowron@samsung.com>
org.tizen.web.apireference/html/device_api/mobile/tizen/push.html
org.tizen.web.apireference/html/device_api/wearable/tizen/push.html

index 42e7b35..095ac44 100644 (file)
@@ -83,12 +83,19 @@ For more information on the Push features, see <a href="https://developer.tizen.
 </tr>
 <tr>
 <td><a href="#PushManager">PushManager</a></td>
-<td>void <a href="#PushManager::registerService">registerService</a> (<a href="application.html#ApplicationControl">ApplicationControl</a> appControl, <a href="#PushRegisterSuccessCallback">PushRegisterSuccessCallback</a> successCallback, optional <a href="tizen.html#ErrorCallback">ErrorCallback</a>? errorCallback)<br>
-    void <a href="#PushManager::unregisterService">unregisterService</a> (optional <a href="tizen.html#SuccessCallback">SuccessCallback</a>? successCallback, optional <a href="tizen.html#ErrorCallback">ErrorCallback</a>? errorCallback)<br>
-    void <a href="#PushManager::connectService">connectService</a> (<a href="#PushNotificationCallback">PushNotificationCallback</a> notificationCallback)<br>
-    void <a href="#PushManager::disconnectService">disconnectService</a> ()<br>
-    <a href="#PushRegistrationId">PushRegistrationId</a> <a href="#PushManager::getRegistrationId">getRegistrationId</a> ()<br>
-    void <a href="#PushManager::getUnreadNotifications">getUnreadNotifications</a> ()</td>
+<td>
+<div class="deprecated">void <a href="#PushManager::registerService">registerService</a> (<a href="application.html#ApplicationControl">ApplicationControl</a> appControl, <a href="#PushRegisterSuccessCallback">PushRegisterSuccessCallback</a> successCallback, optional <a href="tizen.html#ErrorCallback">ErrorCallback</a>? errorCallback)</div>
+<div>void <a href="#PushManager::register">register</a> (<a href="#PushRegisterSuccessCallback">PushRegisterSuccessCallback</a> successCallback, optional <a href="tizen.html#ErrorCallback">ErrorCallback</a>? errorCallback)</div>
+<div class="deprecated">void <a href="#PushManager::unregisterService">unregisterService</a> (optional <a href="tizen.html#SuccessCallback">SuccessCallback</a>? successCallback, optional <a href="tizen.html#ErrorCallback">ErrorCallback</a>? errorCallback)</div>
+<div>void <a href="#PushManager::unregister">unregister</a> (optional <a href="tizen.html#SuccessCallback">SuccessCallback</a>? successCallback, optional <a href="tizen.html#ErrorCallback">ErrorCallback</a>? errorCallback)</div>
+<div>void <a href="#PushManager::connectService">connectService</a> (<a href="#PushNotificationCallback">PushNotificationCallback</a> notificationCallback)</div>
+<div>void <a href="#PushManager::disconnectService">disconnectService</a> ()</div>
+<div>
+<a href="#PushRegistrationId">PushRegistrationId</a> <a href="#PushManager::getRegistrationId">getRegistrationId</a> ()</div>
+<div>void <a href="#PushManager::getUnreadNotifications">getUnreadNotifications</a> ()</div>
+<div>
+<a href="#PushMessage">PushMessage</a>? <a href="#PushManager::getPushMessage">getPushMessage</a> ()</div>
+</td>
 </tr>
 <tr>
 <td><a href="#PushMessage">PushMessage</a></td>
@@ -96,11 +103,11 @@ For more information on the Push features, see <a href="https://developer.tizen.
 </tr>
 <tr>
 <td><a href="#PushRegisterSuccessCallback">PushRegisterSuccessCallback</a></td>
-<td>void <a href="#PushRegisterSuccessCallback::onsuccess">onsuccess</a> (<a href="#PushRegistrationId">PushRegistrationId</a> id)</td>
+<td><div>void <a href="#PushRegisterSuccessCallback::onsuccess">onsuccess</a> (<a href="#PushRegistrationId">PushRegistrationId</a> id)</div></td>
 </tr>
 <tr>
 <td><a href="#PushNotificationCallback">PushNotificationCallback</a></td>
-<td>void <a href="#PushNotificationCallback::onsuccess">onsuccess</a> (<a href="#PushMessage">PushMessage</a> message)</td>
+<td><div>void <a href="#PushNotificationCallback::onsuccess">onsuccess</a> (<a href="#PushMessage">PushMessage</a> message)</div></td>
 </tr>
 </tbody>
 </table>
@@ -148,9 +155,14 @@ The <em>tizen.push </em>object allows access to the functionality of the Push AP
       void registerService(<a href="application.html#ApplicationControl">ApplicationControl</a> appControl, <a href="#PushRegisterSuccessCallback">PushRegisterSuccessCallback</a> successCallback,
                   optional <a href="tizen.html#ErrorCallback">ErrorCallback</a>? errorCallback) raises(<a href="tizen.html#WebAPIException">WebAPIException</a>);
 
+      void register(<a href="#PushRegisterSuccessCallback">PushRegisterSuccessCallback</a> successCallback, optional <a href="tizen.html#ErrorCallback">ErrorCallback</a>? errorCallback) raises(<a href="tizen.html#WebAPIException">WebAPIException</a>);
+
       void unregisterService(optional <a href="tizen.html#SuccessCallback">SuccessCallback</a>? successCallback,
                     optional <a href="tizen.html#ErrorCallback">ErrorCallback</a>? errorCallback) raises(<a href="tizen.html#WebAPIException">WebAPIException</a>);
 
+      void unregister(optional <a href="tizen.html#SuccessCallback">SuccessCallback</a>? successCallback,
+                    optional <a href="tizen.html#ErrorCallback">ErrorCallback</a>? errorCallback) raises(<a href="tizen.html#WebAPIException">WebAPIException</a>);
+
       void connectService(<a href="#PushNotificationCallback">PushNotificationCallback</a> notificationCallback) raises(<a href="tizen.html#WebAPIException">WebAPIException</a>);
 
       void disconnectService() raises(<a href="tizen.html#WebAPIException">WebAPIException</a>);
@@ -158,6 +170,8 @@ The <em>tizen.push </em>object allows access to the functionality of the Push AP
       <a href="#PushRegistrationId">PushRegistrationId</a> getRegistrationId() raises(<a href="tizen.html#WebAPIException">WebAPIException</a>);
 
       void getUnreadNotifications() raises(<a href="tizen.html#WebAPIException">WebAPIException</a>);
+
+      <a href="#PushMessage">PushMessage</a>? getPushMessage() raises(<a href="tizen.html#WebAPIException">WebAPIException</a>);
     };</pre>
 <p><span class="version">
             Since: </span>
@@ -166,13 +180,16 @@ The <em>tizen.push </em>object allows access to the functionality of the Push AP
 <div class="methods">
 <h4>Methods</h4>
 <dl>
-<dt class="method" id="PushManager::registerService">
+<dt class="deprecated method" id="PushManager::registerService">
 <a class="backward-compatibility-anchor" name="::Push::PushManager::registerService"></a><code><b><span class="methodName">registerService</span></b></code>
 </dt>
-<dd>
+<dd class="deprecated">
 <div class="brief">
  Registers an application to the Tizen push server.
             </div>
+<p class="deprecated"><b>Deprecated.</b>
+ This function has been deprecated since 3.0. Use the <a href="push.html#PushManager::register">register()</a> function instead.
+            </p>
 <div class="synopsis"><pre class="signature prettyprint">void registerService(<a href="application.html#ApplicationControl">ApplicationControl</a> appControl, <a href="#PushRegisterSuccessCallback">PushRegisterSuccessCallback</a> successCallback, optional <a href="tizen.html#ErrorCallback">ErrorCallback</a>? errorCallback);
              </pre></div>
 <p><span class="version">
@@ -199,21 +216,21 @@ UnknownError - If any other error occurs.              </li>
  http://tizen.org/privilege/push
             </p>
 <p><span class="remark"> Remark : </span>
- In order to use the push messaging service, see the native <a href="https://developer.tizen.org/development/guides/native-application/messaging/push">Push Messaging Guide</a>.
+ In order to use the push messaging service, see <a href="https://developer.tizen.org/development/guides/native-application/messaging/push">Push Messaging Guide</a>.
             </p>
 <div class="parameters">
 <p><span class="param">Parameters:</span></p>
 <ul>
           <li class="param">
-<span class="name">appControl</span>: 
+<span class="name">appControl</span>:
  The data to deliver via notification service when the process is not running.<br> For more information, see <a href="application.html">Application API</a>.
                 </li>
           <li class="param">
-<span class="name">successCallback</span>: 
+<span class="name">successCallback</span>:
  The method to be called when the registration request succeeds.
                 </li>
           <li class="param">
-<span class="name">errorCallback</span><span class="optional"> [optional]</span><span class="optional"> [nullable]</span>: 
+<span class="name">errorCallback</span><span class="optional"> [optional]</span><span class="optional"> [nullable]</span>:
  The method to be called when the registration request fails.
                 </li>
         </ul>
@@ -257,13 +274,91 @@ do not contain a valid value.
  </pre>
 </div>
 </dd>
-<dt class="method" id="PushManager::unregisterService">
-<a class="backward-compatibility-anchor" name="::Push::PushManager::unregisterService"></a><code><b><span class="methodName">unregisterService</span></b></code>
+<dt class="method" id="PushManager::register">
+<a class="backward-compatibility-anchor" name="::Push::PushManager::register"></a><code><b><span class="methodName">register</span></b></code>
 </dt>
 <dd>
 <div class="brief">
+ Registers an application to the Tizen push server.
+            </div>
+<div class="synopsis"><pre class="signature prettyprint">void register(<a href="#PushRegisterSuccessCallback">PushRegisterSuccessCallback</a> successCallback, optional <a href="tizen.html#ErrorCallback">ErrorCallback</a>? errorCallback);
+             </pre></div>
+<p><span class="version">
+            Since: </span>
+ 3.0
+            </p>
+<div class="description">
+            <p>
+The <em>ErrorCallback()</em> is launched with these error types:
+            </p>
+            <ul>
+              <li>
+AbortError - If the operation cannot be finished properly.              </li>
+            </ul>
+           </div>
+<p><span class="privilegelevel">
+            Privilege level: </span>
+ public
+            </p>
+<p><span class="privilege">
+            Privilege: </span>
+ http://tizen.org/privilege/push
+            </p>
+<div class="parameters">
+<p><span class="param">Parameters:</span></p>
+<ul>
+          <li class="param">
+<span class="name">successCallback</span>:
+ The method to be called when the registration request succeeds.
+                </li>
+          <li class="param">
+<span class="name">errorCallback</span><span class="optional"> [optional]</span><span class="optional"> [nullable]</span>:
+ The method to be called when the registration request fails.
+                </li>
+        </ul>
+</div>
+<div class="exceptionlist">
+<p><span class="except">Exceptions:</span></p>
+          <ul class="exception"><li>WebAPIException<ul>
+<li class="list"><p>
+ with error type TypeMismatchError, if any input parameter is not compatible with the expected type for that parameter.
+                </p></li>
+<li class="list"><p>
+ with error type SecurityError, if the application does not have the privilege to call this method.
+                </p></li>
+</ul>
+</li></ul>
+        </div>
+<div class="example">
+<span class="example"><p>Code example:</p></span><pre name="code" class="examplecode prettyprint"> // Defines the error callback.
+ function errorCallback(response) {
+   console.log("The following error occurred: " +  response.name);
+ }
+
+ // Defines the registration success callback
+ function registerSuccessCallback(id) {
+   console.log("Registration succeeded with id: " + id);
+ }
+
+ // Requests application registration.
+ tizen.push.register(registerSuccessCallback, errorCallback);
+ </pre>
+</div>
+<div class="output">
+<span class="title"><p>Output example:</p></span><pre> Registration succeeded with id: 04a150867a50f48cb79695ac732cbe550b4a6782fffd23cbc14ba8dd5c5ab0025dad29a3e4ef5de8849b95b726bea7a6395c
+ </pre>
+</div>
+</dd>
+<dt class="deprecated method" id="PushManager::unregisterService">
+<a class="backward-compatibility-anchor" name="::Push::PushManager::unregisterService"></a><code><b><span class="methodName">unregisterService</span></b></code>
+</dt>
+<dd class="deprecated">
+<div class="brief">
  Unregisters an application from the Tizen push server.
             </div>
+<p class="deprecated"><b>Deprecated.</b>
+ This function has been deprecated since 3.0. Use the <a href="push.html#PushManager::unregister">unregister()</a> function instead.
+            </p>
 <div class="synopsis"><pre class="signature prettyprint">void unregisterService(optional <a href="tizen.html#SuccessCallback">SuccessCallback</a>? successCallback, optional <a href="tizen.html#ErrorCallback">ErrorCallback</a>? errorCallback);
              </pre></div>
 <p><span class="version">
@@ -291,11 +386,11 @@ UnknownError - If an unknown error occurs.              </li>
 <p><span class="param">Parameters:</span></p>
 <ul>
           <li class="param">
-<span class="name">successCallback</span><span class="optional"> [optional]</span><span class="optional"> [nullable]</span>: 
+<span class="name">successCallback</span><span class="optional"> [optional]</span><span class="optional"> [nullable]</span>:
  The method to be called when the request is successfully unregistered.
                 </li>
           <li class="param">
-<span class="name">errorCallback</span><span class="optional"> [optional]</span><span class="optional"> [nullable]</span>: 
+<span class="name">errorCallback</span><span class="optional"> [optional]</span><span class="optional"> [nullable]</span>:
  The method to be called when the unregistration request fails.
                 </li>
         </ul>
@@ -334,6 +429,81 @@ UnknownError - If an unknown error occurs.              </li>
  </pre>
 </div>
 </dd>
+<dt class="method" id="PushManager::unregister">
+<a class="backward-compatibility-anchor" name="::Push::PushManager::unregister"></a><code><b><span class="methodName">unregister</span></b></code>
+</dt>
+<dd>
+<div class="brief">
+ Unregisters an application from the Tizen push server.
+            </div>
+<div class="synopsis"><pre class="signature prettyprint">void unregister(optional <a href="tizen.html#SuccessCallback">SuccessCallback</a>? successCallback, optional <a href="tizen.html#ErrorCallback">ErrorCallback</a>? errorCallback);
+             </pre></div>
+<p><span class="version">
+            Since: </span>
+ 3.0
+            </p>
+<div class="description">
+            <p>
+The <em>ErrorCallback()</em> is launched with these error types:
+            </p>
+            <ul>
+              <li>
+AbortError - If the operation cannot be finished properly.              </li>
+            </ul>
+           </div>
+<p><span class="privilegelevel">
+            Privilege level: </span>
+ public
+            </p>
+<p><span class="privilege">
+            Privilege: </span>
+ http://tizen.org/privilege/push
+            </p>
+<div class="parameters">
+<p><span class="param">Parameters:</span></p>
+<ul>
+          <li class="param">
+<span class="name">successCallback</span><span class="optional"> [optional]</span><span class="optional"> [nullable]</span>:
+ The method to be called when the unregistration request succeeds.
+                </li>
+          <li class="param">
+<span class="name">errorCallback</span><span class="optional"> [optional]</span><span class="optional"> [nullable]</span>:
+ The method to be called when the unregistration request fails.
+                </li>
+        </ul>
+</div>
+<div class="exceptionlist">
+<p><span class="except">Exceptions:</span></p>
+          <ul class="exception"><li>WebAPIException<ul>
+<li class="list"><p>
+ with error type TypeMismatchError, if any input parameter is not compatible with the expected type for that parameter.
+                </p></li>
+<li class="list"><p>
+ with error type SecurityError, if the application does not have the privilege to call this method.
+                </p></li>
+</ul>
+</li></ul>
+        </div>
+<div class="example">
+<span class="example"><p>Code example:</p></span><pre name="code" class="examplecode prettyprint"> // Defines the error callback
+ function errorCallback(response) {
+   console.log("The following error occurred: " +  response.name);
+ }
+
+ // Defines the unregistration success callback
+ function unregisterSuccessCallback() {
+   console.log("Unregistration succeeded.");
+ }
+
+ // Requests unregistration
+ tizen.push.unregister(unregisterSuccessCallback, errorCallback);
+ </pre>
+</div>
+<div class="output">
+<span class="title"><p>Output example:</p></span><pre> Unregistration succeeded.
+ </pre>
+</div>
+</dd>
 <dt class="method" id="PushManager::connectService">
 <a class="backward-compatibility-anchor" name="::Push::PushManager::connectService"></a><code><b><span class="methodName">connectService</span></b></code>
 </dt>
@@ -356,13 +526,14 @@ UnknownError - If an unknown error occurs.              </li>
  http://tizen.org/privilege/push
             </p>
 <p><span class="remark"> Remark : </span>
- The <em>connectService()</em> method must be called after the <em>registerService()</em> method.
+ If the application calling the <em>connectService()</em> method has not been registered to the Tizen push server,
+the <em>register()</em> method must be called before calling the <em>connectService()</em> method.
             </p>
 <div class="parameters">
 <p><span class="param">Parameters:</span></p>
 <ul>
           <li class="param">
-<span class="name">notificationCallback</span>: 
+<span class="name">notificationCallback</span>:
  The method to be called when the notification message arrives.
                 </li>
         </ul>
@@ -386,7 +557,20 @@ UnknownError - If an unknown error occurs.              </li>
 </li></ul>
         </div>
 <div class="example">
-<span class="example"><p>Code example:</p></span><pre name="code" class="examplecode prettyprint"> // Defines the connect success callback
+<span class="example"><p>Code example:</p></span><pre name="code" class="examplecode prettyprint"> // Defines the registration error callback.
+ function errorCallback(response) {
+   console.log("The following error occurred: " +  response.name);
+ }
+
+ // Defines the registration success callback
+ function registerSuccessCallback(id) {
+   console.log("Registration succeeded with id: " + id);
+ }
+
+ // Requests application registration.
+ tizen.push.register(registerSuccessCallback, errorCallback);
+
+ // Defines the connect success callback
  function notificationCallback(noti) {
    console.log("Notification received with alert message: " + noti.alertMessage);
  }
@@ -456,6 +640,10 @@ UnknownError - If an unknown error occurs.              </li>
             Privilege: </span>
  http://tizen.org/privilege/push
             </p>
+<div class="returntype">
+<p><span class="return">Return value:</span></p>
+ PushRegistrationId ID assigned by push service.
+              </div>
 <div class="exceptionlist">
 <p><span class="except">Exceptions:</span></p>
           <ul class="exception"><li>WebAPIException<ul>
@@ -539,6 +727,67 @@ Once a missed push notification is retrieved the server deletes it from its data
  </pre>
 </div>
 </dd>
+<dt class="method" id="PushManager::getPushMessage">
+<a class="backward-compatibility-anchor" name="::Push::PushManager::getPushMessage"></a><code><b><span class="methodName">getPushMessage</span></b></code>
+</dt>
+<dd>
+<div class="brief">
+ Gets push messages when the application is launched by the push service.
+            </div>
+<div class="synopsis"><pre class="signature prettyprint"><a href="#PushMessage">PushMessage</a>? getPushMessage();
+             </pre></div>
+<p><span class="version">
+            Since: </span>
+ 3.0
+            </p>
+<div class="description">
+            <p>
+If the application is launched by the push service, the push service is connected when the application is launched.
+Therefore, you can get push messages without calling the <a href="push.html#Push%20Manager::register">register()</a> and
+<a href="push.html#Push%20Manager::connectService">connectService()</a> functions.
+            </p>
+            <p>
+If the application was not launched by the push service, this method returns <em>null</em>.
+            </p>
+           </div>
+<p><span class="privilegelevel">
+            Privilege level: </span>
+ public
+            </p>
+<p><span class="privilege">
+            Privilege: </span>
+ http://tizen.org/privilege/push
+            </p>
+<div class="returntype">
+<p><span class="return">Return value:</span></p>
+ PushMessage The last message delivered from the push service or null.
+              </div>
+<div class="exceptionlist">
+<p><span class="except">Exceptions:</span></p>
+          <ul class="exception"><li>WebAPIException<ul>
+<li class="list"><p>
+ with error type SecurityError, if the application does not have the privilege to call this method.
+                </p></li>
+<li class="list"><p>
+ with error type AbortError, if the operation cannot be finished properly.
+                </p></li>
+</ul>
+</li></ul>
+        </div>
+<div class="example">
+<span class="example"><p>Code example:</p></span><pre name="code" class="examplecode prettyprint"> try {
+   var message = tizen.push.getPushMessage();
+   console.log('Message received from: ' + message.sender);
+ } catch (err) {
+   console.log('Exception - code: ' + err.name + ' message: ' + err.message);
+ }
+ </pre>
+</div>
+<div class="output">
+<span class="title"><p>Output example:</p></span><pre> Message received from: xyz.AnotherApp
+ </pre>
+</div>
+</dd>
 </dl>
 </div>
 </div>
@@ -552,7 +801,17 @@ Once a missed push notification is retrieved the server deletes it from its data
 
         readonly attribute DOMString alertMessage;
 
+        readonly attribute DOMString message;
+
         readonly attribute Date date;
+
+        readonly attribute DOMString sender;
+
+        readonly attribute DOMString sessionInfo;
+
+        readonly attribute DOMString requestId;
+
+        readonly attribute long type;
     };</pre>
 <p><span class="version">
             Since: </span>
@@ -579,13 +838,23 @@ This data is the message that the sender wants to send and its length must be le
 <li class="attribute" id="PushMessage::alertMessage">
 <span class="attrName"><span class="readonly">                readonly
 </span><span class="type">DOMString </span><span class="name">alertMessage</span></span><div class="brief">
- An attribute to store the push notification message that is displayed as an alert message to the user.
+ An attribute to store the push notification message that may include an alert message to the user.
             </div>
 <p><span class="version">
             Since: </span>
  2.1
             </p>
 </li>
+<li class="attribute" id="PushMessage::message">
+<span class="attrName"><span class="readonly">                readonly
+</span><span class="type">DOMString </span><span class="name">message</span></span><div class="brief">
+ An attribute to store the full push notification message.
+            </div>
+<p><span class="version">
+            Since: </span>
+ 3.0
+            </p>
+</li>
 <li class="attribute" id="PushMessage::date">
 <span class="attrName"><span class="readonly">                readonly
 </span><span class="type">Date </span><span class="name">date</span></span><div class="brief">
@@ -596,6 +865,74 @@ This data is the message that the sender wants to send and its length must be le
  2.1
             </p>
 </li>
+<li class="attribute" id="PushMessage::sender">
+<span class="attrName"><span class="readonly">                readonly
+</span><span class="type">DOMString </span><span class="name">sender</span></span><div class="brief">
+ The name of the sender of the notification.
+            </div>
+<p><span class="version">
+            Since: </span>
+ 3.0
+            </p>
+</li>
+<li class="attribute" id="PushMessage::sessionInfo">
+<span class="attrName"><span class="readonly">                readonly
+</span><span class="type">DOMString </span><span class="name">sessionInfo</span></span><div class="brief">
+ The session information of the notification.
+            </div>
+<p><span class="version">
+            Since: </span>
+ 3.0
+            </p>
+</li>
+<li class="attribute" id="PushMessage::requestId">
+<span class="attrName"><span class="readonly">                readonly
+</span><span class="type">DOMString </span><span class="name">requestId</span></span><div class="brief">
+ The request ID assigned by the sender.
+            </div>
+<p><span class="version">
+            Since: </span>
+ 3.0
+            </p>
+</li>
+<li class="attribute" id="PushMessage::type">
+<span class="attrName"><span class="readonly">                readonly
+</span><span class="type">long </span><span class="name">type</span></span><div class="brief">
+ The type value assigned by the sender.
+            </div>
+<p><span class="version">
+            Since: </span>
+ 3.0
+            </p>
+<div class="example">
+<span class="example"><p>Code example:</p></span><pre name="code" class="examplecode prettyprint"> // Defines the connect success callback
+ function notificationCallback(noti) {
+   console.log('notification received on ' + noti.date + ' from: ' + noti.sender);
+   console.log('Details:');
+   console.log(' - data: ' + noti.appData);
+   console.log(' - alert message: ' + noti.alertMessage);
+   console.log(' - message: ' + noti.message);
+   console.log(' - session: ' + noti.sessionInfo);
+   console.log(' - request ID: ' + noti.requestId);
+   console.log(' - type: ' + noti.type);
+ }
+
+ // Requests for push service connection
+ tizen.push.connectService(notificationCallback);
+ </pre>
+</div>
+<div class="output">
+<span class="title"><p>Output example:</p></span><pre> Notification received on Thu Jan 01 2015 from: xyz.AnotherApp
+ Details:
+  - data: {id:asdf}
+  - alert message: Hi
+  - message: alertMessage=Hi
+  - session: 002002
+  - request ID: 23
+  - type: 1
+ </pre>
+</div>
+</li>
 </ul>
 </div>
 </div>
@@ -637,7 +974,7 @@ This success callback is invoked when a push service registration request is suc
 <p><span class="param">Parameters:</span></p>
 <ul>
           <li class="param">
-<span class="name">id</span>: 
+<span class="name">id</span>:
  The registration ID.
                 </li>
         </ul>
@@ -684,7 +1021,7 @@ This notification callback is invoked when the push notification message arrives
 <p><span class="param">Parameters:</span></p>
 <ul>
           <li class="param">
-<span class="name">message</span>: 
+<span class="name">message</span>:
  The received push notification message.
                 </li>
         </ul>
@@ -721,9 +1058,14 @@ To guarantee that the push application runs on a device with the push feature, d
       void registerService(<a href="application.html#ApplicationControl">ApplicationControl</a> appControl, <a href="#PushRegisterSuccessCallback">PushRegisterSuccessCallback</a> successCallback,
                   optional <a href="tizen.html#ErrorCallback">ErrorCallback</a>? errorCallback) raises(<a href="tizen.html#WebAPIException">WebAPIException</a>);
 
+      void register(<a href="#PushRegisterSuccessCallback">PushRegisterSuccessCallback</a> successCallback, optional <a href="tizen.html#ErrorCallback">ErrorCallback</a>? errorCallback) raises(<a href="tizen.html#WebAPIException">WebAPIException</a>);
+
       void unregisterService(optional <a href="tizen.html#SuccessCallback">SuccessCallback</a>? successCallback,
                     optional <a href="tizen.html#ErrorCallback">ErrorCallback</a>? errorCallback) raises(<a href="tizen.html#WebAPIException">WebAPIException</a>);
 
+      void unregister(optional <a href="tizen.html#SuccessCallback">SuccessCallback</a>? successCallback,
+                    optional <a href="tizen.html#ErrorCallback">ErrorCallback</a>? errorCallback) raises(<a href="tizen.html#WebAPIException">WebAPIException</a>);
+
       void connectService(<a href="#PushNotificationCallback">PushNotificationCallback</a> notificationCallback) raises(<a href="tizen.html#WebAPIException">WebAPIException</a>);
 
       void disconnectService() raises(<a href="tizen.html#WebAPIException">WebAPIException</a>);
@@ -731,6 +1073,8 @@ To guarantee that the push application runs on a device with the push feature, d
       <a href="#PushRegistrationId">PushRegistrationId</a> getRegistrationId() raises(<a href="tizen.html#WebAPIException">WebAPIException</a>);
 
       void getUnreadNotifications() raises(<a href="tizen.html#WebAPIException">WebAPIException</a>);
+
+      <a href="#PushMessage">PushMessage</a>? getPushMessage() raises(<a href="tizen.html#WebAPIException">WebAPIException</a>);
     };
 
     [NoInterfaceObject] interface PushMessage {
@@ -738,7 +1082,17 @@ To guarantee that the push application runs on a device with the push feature, d
 
         readonly attribute DOMString alertMessage;
 
+        readonly attribute DOMString message;
+
         readonly attribute Date date;
+
+        readonly attribute DOMString sender;
+
+        readonly attribute DOMString sessionInfo;
+
+        readonly attribute DOMString requestId;
+
+        readonly attribute long type;
     };
 
     [Callback=FunctionOnly, NoInterfaceObject]
index 88f4d5a..7732c3c 100755 (executable)
@@ -83,12 +83,19 @@ For more information on the Push features, see <a href="https://developer.tizen.
 </tr>
 <tr>
 <td><a href="#PushManager">PushManager</a></td>
-<td>void <a href="#PushManager::registerService">registerService</a> (<a href="application.html#ApplicationControl">ApplicationControl</a> appControl, <a href="#PushRegisterSuccessCallback">PushRegisterSuccessCallback</a> successCallback, optional <a href="tizen.html#ErrorCallback">ErrorCallback</a>? errorCallback)<br>
-    void <a href="#PushManager::unregisterService">unregisterService</a> (optional <a href="tizen.html#SuccessCallback">SuccessCallback</a>? successCallback, optional <a href="tizen.html#ErrorCallback">ErrorCallback</a>? errorCallback)<br>
-    void <a href="#PushManager::connectService">connectService</a> (<a href="#PushNotificationCallback">PushNotificationCallback</a> notificationCallback)<br>
-    void <a href="#PushManager::disconnectService">disconnectService</a> ()<br>
-    <a href="#PushRegistrationId">PushRegistrationId</a> <a href="#PushManager::getRegistrationId">getRegistrationId</a> ()<br>
-    void <a href="#PushManager::getUnreadNotifications">getUnreadNotifications</a> ()</td>
+<td>
+<div class="deprecated">void <a href="#PushManager::registerService">registerService</a> (<a href="application.html#ApplicationControl">ApplicationControl</a> appControl, <a href="#PushRegisterSuccessCallback">PushRegisterSuccessCallback</a> successCallback, optional <a href="tizen.html#ErrorCallback">ErrorCallback</a>? errorCallback)</div>
+<div>void <a href="#PushManager::register">register</a> (<a href="#PushRegisterSuccessCallback">PushRegisterSuccessCallback</a> successCallback, optional <a href="tizen.html#ErrorCallback">ErrorCallback</a>? errorCallback)</div>
+<div class="deprecated">void <a href="#PushManager::unregisterService">unregisterService</a> (optional <a href="tizen.html#SuccessCallback">SuccessCallback</a>? successCallback, optional <a href="tizen.html#ErrorCallback">ErrorCallback</a>? errorCallback)</div>
+<div>void <a href="#PushManager::unregister">unregister</a> (optional <a href="tizen.html#SuccessCallback">SuccessCallback</a>? successCallback, optional <a href="tizen.html#ErrorCallback">ErrorCallback</a>? errorCallback)</div>
+<div>void <a href="#PushManager::connectService">connectService</a> (<a href="#PushNotificationCallback">PushNotificationCallback</a> notificationCallback)</div>
+<div>void <a href="#PushManager::disconnectService">disconnectService</a> ()</div>
+<div>
+<a href="#PushRegistrationId">PushRegistrationId</a> <a href="#PushManager::getRegistrationId">getRegistrationId</a> ()</div>
+<div>void <a href="#PushManager::getUnreadNotifications">getUnreadNotifications</a> ()</div>
+<div>
+<a href="#PushMessage">PushMessage</a>? <a href="#PushManager::getPushMessage">getPushMessage</a> ()</div>
+</td>
 </tr>
 <tr>
 <td><a href="#PushMessage">PushMessage</a></td>
@@ -96,11 +103,11 @@ For more information on the Push features, see <a href="https://developer.tizen.
 </tr>
 <tr>
 <td><a href="#PushRegisterSuccessCallback">PushRegisterSuccessCallback</a></td>
-<td>void <a href="#PushRegisterSuccessCallback::onsuccess">onsuccess</a> (<a href="#PushRegistrationId">PushRegistrationId</a> id)</td>
+<td><div>void <a href="#PushRegisterSuccessCallback::onsuccess">onsuccess</a> (<a href="#PushRegistrationId">PushRegistrationId</a> id)</div></td>
 </tr>
 <tr>
 <td><a href="#PushNotificationCallback">PushNotificationCallback</a></td>
-<td>void <a href="#PushNotificationCallback::onsuccess">onsuccess</a> (<a href="#PushMessage">PushMessage</a> message)</td>
+<td><div>void <a href="#PushNotificationCallback::onsuccess">onsuccess</a> (<a href="#PushMessage">PushMessage</a> message)</div></td>
 </tr>
 </tbody>
 </table>
@@ -148,9 +155,14 @@ The <em>tizen.push </em>object allows access to the functionality of the Push AP
       void registerService(<a href="application.html#ApplicationControl">ApplicationControl</a> appControl, <a href="#PushRegisterSuccessCallback">PushRegisterSuccessCallback</a> successCallback,
                   optional <a href="tizen.html#ErrorCallback">ErrorCallback</a>? errorCallback) raises(<a href="tizen.html#WebAPIException">WebAPIException</a>);
 
+      void register(<a href="#PushRegisterSuccessCallback">PushRegisterSuccessCallback</a> successCallback, optional <a href="tizen.html#ErrorCallback">ErrorCallback</a>? errorCallback) raises(<a href="tizen.html#WebAPIException">WebAPIException</a>);
+
       void unregisterService(optional <a href="tizen.html#SuccessCallback">SuccessCallback</a>? successCallback,
                     optional <a href="tizen.html#ErrorCallback">ErrorCallback</a>? errorCallback) raises(<a href="tizen.html#WebAPIException">WebAPIException</a>);
 
+      void unregister(optional <a href="tizen.html#SuccessCallback">SuccessCallback</a>? successCallback,
+                    optional <a href="tizen.html#ErrorCallback">ErrorCallback</a>? errorCallback) raises(<a href="tizen.html#WebAPIException">WebAPIException</a>);
+
       void connectService(<a href="#PushNotificationCallback">PushNotificationCallback</a> notificationCallback) raises(<a href="tizen.html#WebAPIException">WebAPIException</a>);
 
       void disconnectService() raises(<a href="tizen.html#WebAPIException">WebAPIException</a>);
@@ -158,6 +170,8 @@ The <em>tizen.push </em>object allows access to the functionality of the Push AP
       <a href="#PushRegistrationId">PushRegistrationId</a> getRegistrationId() raises(<a href="tizen.html#WebAPIException">WebAPIException</a>);
 
       void getUnreadNotifications() raises(<a href="tizen.html#WebAPIException">WebAPIException</a>);
+
+      <a href="#PushMessage">PushMessage</a>? getPushMessage() raises(<a href="tizen.html#WebAPIException">WebAPIException</a>);
     };</pre>
 <p><span class="version">
             Since: </span>
@@ -166,13 +180,16 @@ The <em>tizen.push </em>object allows access to the functionality of the Push AP
 <div class="methods">
 <h4>Methods</h4>
 <dl>
-<dt class="method" id="PushManager::registerService">
+<dt class="deprecated method" id="PushManager::registerService">
 <a class="backward-compatibility-anchor" name="::Push::PushManager::registerService"></a><code><b><span class="methodName">registerService</span></b></code>
 </dt>
-<dd>
+<dd class="deprecated">
 <div class="brief">
  Registers an application to the Tizen push server.
             </div>
+<p class="deprecated"><b>Deprecated.</b>
+ This function has been deprecated since 3.0. Use the <a href="push.html#PushManager::register">register()</a> function instead.
+            </p>
 <div class="synopsis"><pre class="signature prettyprint">void registerService(<a href="application.html#ApplicationControl">ApplicationControl</a> appControl, <a href="#PushRegisterSuccessCallback">PushRegisterSuccessCallback</a> successCallback, optional <a href="tizen.html#ErrorCallback">ErrorCallback</a>? errorCallback);
              </pre></div>
 <p><span class="version">
@@ -257,13 +274,91 @@ do not contain a valid value.
  </pre>
 </div>
 </dd>
-<dt class="method" id="PushManager::unregisterService">
-<a class="backward-compatibility-anchor" name="::Push::PushManager::unregisterService"></a><code><b><span class="methodName">unregisterService</span></b></code>
+<dt class="method" id="PushManager::register">
+<a class="backward-compatibility-anchor" name="::Push::PushManager::register"></a><code><b><span class="methodName">register</span></b></code>
 </dt>
 <dd>
 <div class="brief">
+ Registers an application to the Tizen push server.
+            </div>
+<div class="synopsis"><pre class="signature prettyprint">void register(<a href="#PushRegisterSuccessCallback">PushRegisterSuccessCallback</a> successCallback, optional <a href="tizen.html#ErrorCallback">ErrorCallback</a>? errorCallback);
+             </pre></div>
+<p><span class="version">
+            Since: </span>
+ 3.0
+            </p>
+<div class="description">
+            <p>
+The <em>ErrorCallback()</em> is launched with these error types:
+            </p>
+            <ul>
+              <li>
+AbortError - If the operation cannot be finished properly.              </li>
+            </ul>
+           </div>
+<p><span class="privilegelevel">
+            Privilege level: </span>
+ public
+            </p>
+<p><span class="privilege">
+            Privilege: </span>
+ http://tizen.org/privilege/push
+            </p>
+<div class="parameters">
+<p><span class="param">Parameters:</span></p>
+<ul>
+          <li class="param">
+<span class="name">successCallback</span>:
+ The method to be called when the registration request succeeds.
+                </li>
+          <li class="param">
+<span class="name">errorCallback</span><span class="optional"> [optional]</span><span class="optional"> [nullable]</span>:
+ The method to be called when the registration request fails.
+                </li>
+        </ul>
+</div>
+<div class="exceptionlist">
+<p><span class="except">Exceptions:</span></p>
+          <ul class="exception"><li>WebAPIException<ul>
+<li class="list"><p>
+ with error type TypeMismatchError, if any input parameter is not compatible with the expected type for that parameter.
+                </p></li>
+<li class="list"><p>
+ with error type SecurityError, if the application does not have the privilege to call this method.
+                </p></li>
+</ul>
+</li></ul>
+        </div>
+<div class="example">
+<span class="example"><p>Code example:</p></span><pre name="code" class="examplecode prettyprint"> // Defines the error callback.
+ function errorCallback(response) {
+   console.log("The following error occurred: " +  response.name);
+ }
+
+ // Defines the registration success callback
+ function registerSuccessCallback(id) {
+   console.log("Registration succeeded with id: " + id);
+ }
+
+ // Requests application registration.
+ tizen.push.register(registerSuccessCallback, errorCallback);
+ </pre>
+</div>
+<div class="output">
+<span class="title"><p>Output example:</p></span><pre> Registration succeeded with id: 04a150867a50f48cb79695ac732cbe550b4a6782fffd23cbc14ba8dd5c5ab0025dad29a3e4ef5de8849b95b726bea7a6395c
+ </pre>
+</div>
+</dd>
+<dt class="deprecated method" id="PushManager::unregisterService">
+<a class="backward-compatibility-anchor" name="::Push::PushManager::unregisterService"></a><code><b><span class="methodName">unregisterService</span></b></code>
+</dt>
+<dd class="deprecated">
+<div class="brief">
  Unregisters an application from the Tizen push server.
             </div>
+<p class="deprecated"><b>Deprecated.</b>
+ This function has been deprecated since 3.0. Use the <a href="push.html#PushManager::unregister">unregister()</a> function instead.
+            </p>
 <div class="synopsis"><pre class="signature prettyprint">void unregisterService(optional <a href="tizen.html#SuccessCallback">SuccessCallback</a>? successCallback, optional <a href="tizen.html#ErrorCallback">ErrorCallback</a>? errorCallback);
              </pre></div>
 <p><span class="version">
@@ -334,6 +429,81 @@ UnknownError - If an unknown error occurs.              </li>
  </pre>
 </div>
 </dd>
+<dt class="method" id="PushManager::unregister">
+<a class="backward-compatibility-anchor" name="::Push::PushManager::unregister"></a><code><b><span class="methodName">unregister</span></b></code>
+</dt>
+<dd>
+<div class="brief">
+ Unregisters an application from the Tizen push server.
+            </div>
+<div class="synopsis"><pre class="signature prettyprint">void unregister(optional <a href="tizen.html#SuccessCallback">SuccessCallback</a>? successCallback, optional <a href="tizen.html#ErrorCallback">ErrorCallback</a>? errorCallback);
+             </pre></div>
+<p><span class="version">
+            Since: </span>
+ 3.0
+            </p>
+<div class="description">
+            <p>
+The <em>ErrorCallback()</em> is launched with these error types:
+            </p>
+            <ul>
+              <li>
+AbortError - If the operation cannot be finished properly.              </li>
+            </ul>
+           </div>
+<p><span class="privilegelevel">
+            Privilege level: </span>
+ public
+            </p>
+<p><span class="privilege">
+            Privilege: </span>
+ http://tizen.org/privilege/push
+            </p>
+<div class="parameters">
+<p><span class="param">Parameters:</span></p>
+<ul>
+          <li class="param">
+<span class="name">successCallback</span><span class="optional"> [optional]</span><span class="optional"> [nullable]</span>:
+ The method to be called when the unregistration request succeeds.
+                </li>
+          <li class="param">
+<span class="name">errorCallback</span><span class="optional"> [optional]</span><span class="optional"> [nullable]</span>:
+ The method to be called when the unregistration request fails.
+                </li>
+        </ul>
+</div>
+<div class="exceptionlist">
+<p><span class="except">Exceptions:</span></p>
+          <ul class="exception"><li>WebAPIException<ul>
+<li class="list"><p>
+ with error type TypeMismatchError, if any input parameter is not compatible with the expected type for that parameter.
+                </p></li>
+<li class="list"><p>
+ with error type SecurityError, if the application does not have the privilege to call this method.
+                </p></li>
+</ul>
+</li></ul>
+        </div>
+<div class="example">
+<span class="example"><p>Code example:</p></span><pre name="code" class="examplecode prettyprint"> // Defines the error callback
+ function errorCallback(response) {
+   console.log("The following error occurred: " +  response.name);
+ }
+
+ // Defines the unregistration success callback
+ function unregisterSuccessCallback() {
+   console.log("Unregistration succeeded.");
+ }
+
+ // Requests unregistration
+ tizen.push.unregister(unregisterSuccessCallback, errorCallback);
+ </pre>
+</div>
+<div class="output">
+<span class="title"><p>Output example:</p></span><pre> Unregistration succeeded.
+ </pre>
+</div>
+</dd>
 <dt class="method" id="PushManager::connectService">
 <a class="backward-compatibility-anchor" name="::Push::PushManager::connectService"></a><code><b><span class="methodName">connectService</span></b></code>
 </dt>
@@ -356,7 +526,8 @@ UnknownError - If an unknown error occurs.              </li>
  http://tizen.org/privilege/push
             </p>
 <p><span class="remark"> Remark : </span>
- The <em>connectService()</em> method must be called after the <em>registerService()</em> method.
+ If the application calling the <em>connectService()</em> method has not been registered to the Tizen push server,
+the <em>register()</em> method must be called before calling the <em>connectService()</em> method.
             </p>
 <div class="parameters">
 <p><span class="param">Parameters:</span></p>
@@ -386,7 +557,20 @@ UnknownError - If an unknown error occurs.              </li>
 </li></ul>
         </div>
 <div class="example">
-<span class="example"><p>Code example:</p></span><pre name="code" class="examplecode prettyprint"> // Defines the connect success callback
+<span class="example"><p>Code example:</p></span><pre name="code" class="examplecode prettyprint"> // Defines the registration error callback.
+ function errorCallback(response) {
+   console.log("The following error occurred: " +  response.name);
+ }
+
+ // Defines the registration success callback
+ function registerSuccessCallback(id) {
+   console.log("Registration succeeded with id: " + id);
+ }
+
+ // Requests application registration.
+ tizen.push.register(registerSuccessCallback, errorCallback);
+
+ // Defines the connect success callback
  function notificationCallback(noti) {
    console.log("Notification received with alert message: " + noti.alertMessage);
  }
@@ -456,6 +640,10 @@ UnknownError - If an unknown error occurs.              </li>
             Privilege: </span>
  http://tizen.org/privilege/push
             </p>
+<div class="returntype">
+<p><span class="return">Return value:</span></p>
+ PushRegistrationId ID assigned by push service.
+              </div>
 <div class="exceptionlist">
 <p><span class="except">Exceptions:</span></p>
           <ul class="exception"><li>WebAPIException<ul>
@@ -539,6 +727,67 @@ Once a missed push notification is retrieved the server deletes it from its data
  </pre>
 </div>
 </dd>
+<dt class="method" id="PushManager::getPushMessage">
+<a class="backward-compatibility-anchor" name="::Push::PushManager::getPushMessage"></a><code><b><span class="methodName">getPushMessage</span></b></code>
+</dt>
+<dd>
+<div class="brief">
+ Gets push messages when the application is launched by the push service.
+            </div>
+<div class="synopsis"><pre class="signature prettyprint"><a href="#PushMessage">PushMessage</a>? getPushMessage();
+             </pre></div>
+<p><span class="version">
+            Since: </span>
+ 3.0
+            </p>
+<div class="description">
+            <p>
+If the application is launched by the push service, the push service is connected when the application is launched.
+Therefore, you can get push messages without calling the <a href="push.html#Push%20Manager::register">register()</a> and
+<a href="push.html#Push%20Manager::connectService">connectService()</a> functions.
+            </p>
+            <p>
+If the application was not launched by the push service, this method returns <em>null</em>.
+            </p>
+           </div>
+<p><span class="privilegelevel">
+            Privilege level: </span>
+ public
+            </p>
+<p><span class="privilege">
+            Privilege: </span>
+ http://tizen.org/privilege/push
+            </p>
+<div class="returntype">
+<p><span class="return">Return value:</span></p>
+ PushMessage The last message delivered from the push service or null.
+              </div>
+<div class="exceptionlist">
+<p><span class="except">Exceptions:</span></p>
+          <ul class="exception"><li>WebAPIException<ul>
+<li class="list"><p>
+ with error type SecurityError, if the application does not have the privilege to call this method.
+                </p></li>
+<li class="list"><p>
+ with error type AbortError, if the operation cannot be finished properly.
+                </p></li>
+</ul>
+</li></ul>
+        </div>
+<div class="example">
+<span class="example"><p>Code example:</p></span><pre name="code" class="examplecode prettyprint"> try {
+   var message = tizen.push.getPushMessage();
+   console.log('Message received from: ' + message.sender);
+ } catch (err) {
+   console.log('Exception - code: ' + err.name + ' message: ' + err.message);
+ }
+ </pre>
+</div>
+<div class="output">
+<span class="title"><p>Output example:</p></span><pre> Message received from: xyz.AnotherApp
+ </pre>
+</div>
+</dd>
 </dl>
 </div>
 </div>
@@ -552,7 +801,17 @@ Once a missed push notification is retrieved the server deletes it from its data
 
         readonly attribute DOMString alertMessage;
 
+        readonly attribute DOMString message;
+
         readonly attribute Date date;
+
+        readonly attribute DOMString sender;
+
+        readonly attribute DOMString sessionInfo;
+
+        readonly attribute DOMString requestId;
+
+        readonly attribute long type;
     };</pre>
 <p><span class="version">
             Since: </span>
@@ -579,13 +838,23 @@ This data is the message that the sender wants to send and its length must be le
 <li class="attribute" id="PushMessage::alertMessage">
 <span class="attrName"><span class="readonly">                readonly
 </span><span class="type">DOMString </span><span class="name">alertMessage</span></span><div class="brief">
- An attribute to store the push notification message that is displayed as an alert message to the user.
+ An attribute to store the push notification message that may include an alert message to the user.
             </div>
 <p><span class="version">
             Since: </span>
  2.3.1
             </p>
 </li>
+<li class="attribute" id="PushMessage::message">
+<span class="attrName"><span class="readonly">                readonly
+</span><span class="type">DOMString </span><span class="name">message</span></span><div class="brief">
+ An attribute to store the full push notification message.
+            </div>
+<p><span class="version">
+            Since: </span>
+ 3.0
+            </p>
+</li>
 <li class="attribute" id="PushMessage::date">
 <span class="attrName"><span class="readonly">                readonly
 </span><span class="type">Date </span><span class="name">date</span></span><div class="brief">
@@ -596,6 +865,73 @@ This data is the message that the sender wants to send and its length must be le
  2.3.1
             </p>
 </li>
+<li class="attribute" id="PushMessage::sender">
+<span class="attrName"><span class="readonly">                readonly
+</span><span class="type">DOMString </span><span class="name">sender</span></span><div class="brief">
+ The name of the sender of the notification.
+            </div>
+<p><span class="version">
+            Since: </span>
+ 3.0
+            </p>
+</li>
+<li class="attribute" id="PushMessage::sessionInfo">
+<span class="attrName"><span class="readonly">                readonly
+</span><span class="type">DOMString </span><span class="name">sessionInfo</span></span><div class="brief">
+ The session information of the notification.
+            </div>
+<p><span class="version">
+            Since: </span>
+ 3.0
+            </p>
+</li>
+<li class="attribute" id="PushMessage::requestId">
+<span class="attrName"><span class="readonly">                readonly
+</span><span class="type">DOMString </span><span class="name">requestId</span></span><div class="brief">
+ The request ID assigned by the sender.
+            </div>
+<p><span class="version">
+            Since: </span>
+ 3.0
+            </p>
+</li>
+<li class="attribute" id="PushMessage::type">
+<span class="attrName"><span class="readonly">                readonly
+</span><span class="type">long </span><span class="name">type</span></span><div class="brief">
+ The type value assigned by the sender.
+            </div>
+<p><span class="version">
+            Since: </span>
+ 3.0
+            </p>
+<div class="example">
+<span class="example"><p>Code example:</p></span><pre name="code" class="examplecode prettyprint"> // Defines the connect success callback
+ function notificationCallback(noti) {
+   console.log('notification received on ' + noti.date + ' from: ' + noti.sender);
+   console.log('Details:');
+   console.log(' - data: ' + noti.appData);
+   console.log(' - alert message: ' + noti.alertMessage);
+   console.log(' - message: ' + noti.message);
+   console.log(' - session: ' + noti.sessionInfo);
+   console.log(' - request ID: ' + noti.requestId);
+   console.log(' - type: ' + noti.type);
+ }
+
+ // Requests for push service connection
+ tizen.push.connectService(notificationCallback);
+ </pre>
+</div>
+<div class="output">
+<span class="title"><p>Output example:</p></span><pre> Notification received on Thu Jan 01 2015 from: xyz.AnotherApp
+ Details:
+  - data: example data
+  - alert message: Data from xyz.AnotherApp received
+  - session: example session info
+  - request ID: 23
+  - type: 1
+ </pre>
+</div>
+</li>
 </ul>
 </div>
 </div>
@@ -721,9 +1057,14 @@ To guarantee that the push application runs on a device with the push feature, d
       void registerService(<a href="application.html#ApplicationControl">ApplicationControl</a> appControl, <a href="#PushRegisterSuccessCallback">PushRegisterSuccessCallback</a> successCallback,
                   optional <a href="tizen.html#ErrorCallback">ErrorCallback</a>? errorCallback) raises(<a href="tizen.html#WebAPIException">WebAPIException</a>);
 
+      void register(<a href="#PushRegisterSuccessCallback">PushRegisterSuccessCallback</a> successCallback, optional <a href="tizen.html#ErrorCallback">ErrorCallback</a>? errorCallback) raises(<a href="tizen.html#WebAPIException">WebAPIException</a>);
+
       void unregisterService(optional <a href="tizen.html#SuccessCallback">SuccessCallback</a>? successCallback,
                     optional <a href="tizen.html#ErrorCallback">ErrorCallback</a>? errorCallback) raises(<a href="tizen.html#WebAPIException">WebAPIException</a>);
 
+      void unregister(optional <a href="tizen.html#SuccessCallback">SuccessCallback</a>? successCallback,
+                    optional <a href="tizen.html#ErrorCallback">ErrorCallback</a>? errorCallback) raises(<a href="tizen.html#WebAPIException">WebAPIException</a>);
+
       void connectService(<a href="#PushNotificationCallback">PushNotificationCallback</a> notificationCallback) raises(<a href="tizen.html#WebAPIException">WebAPIException</a>);
 
       void disconnectService() raises(<a href="tizen.html#WebAPIException">WebAPIException</a>);
@@ -731,6 +1072,8 @@ To guarantee that the push application runs on a device with the push feature, d
       <a href="#PushRegistrationId">PushRegistrationId</a> getRegistrationId() raises(<a href="tizen.html#WebAPIException">WebAPIException</a>);
 
       void getUnreadNotifications() raises(<a href="tizen.html#WebAPIException">WebAPIException</a>);
+
+      <a href="#PushMessage">PushMessage</a>? getPushMessage() raises(<a href="tizen.html#WebAPIException">WebAPIException</a>);
     };
 
     [NoInterfaceObject] interface PushMessage {
@@ -738,7 +1081,17 @@ To guarantee that the push application runs on a device with the push feature, d
 
         readonly attribute DOMString alertMessage;
 
+        readonly attribute DOMString message;
+
         readonly attribute Date date;
+
+        readonly attribute DOMString sender;
+
+        readonly attribute DOMString sessionInfo;
+
+        readonly attribute DOMString requestId;
+
+        readonly attribute long type;
     };
 
     [Callback=FunctionOnly, NoInterfaceObject]