Open Source Telephony
 help / color / mirror / Atom feed
From: Yang Gu <yang.gu@intel.com>
To: ofono@ofono.org
Subject: [PATCH 2/2] doc: Describe the scriptable feature
Date: Thu, 14 Oct 2010 20:34:42 +0800	[thread overview]
Message-ID: <1287059682-12973-2-git-send-email-yang.gu@intel.com> (raw)
In-Reply-To: <1287059682-12973-1-git-send-email-yang.gu@intel.com>

[-- Attachment #1: Type: text/plain, Size: 2672 bytes --]

---
 doc/scriptable.txt |   55 ++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 55 insertions(+), 0 deletions(-)
 create mode 100644 doc/scriptable.txt

diff --git a/doc/scriptable.txt b/doc/scriptable.txt
new file mode 100644
index 0000000..670bd21
--- /dev/null
+++ b/doc/scriptable.txt
@@ -0,0 +1,55 @@
+With the support of QtScript, now phonesim is scriptable, which means you may
+manipulate or extend phonesim's functionality using ECMA script language
+(defined in ECMA-262). At the same time, some D-Bus interface and dedicated
+methods are also defined to facilitate this feature. As a result, full test
+automation can be achieved (Without this, if you want to initiate an incoming
+call, you have to do some operations manually within phonesim GUI).  Below are
+several examples:
+
+1. call.js (stand for incoming call and copy it to /tmp/call/)
+tabRegistration.gbIncomingCall.leCaller.text = "12345";
+tabRegistration.gbIncomingCall.pbIncomingCall.click();
+
+Then set the path of script and run the script with its name:
+
+dbus-send --session --print-reply --dest=org.ofono.phonesim /
+org.ofono.phonesim.Script.SetPath string:/tmp/call
+
+dbus-send --session --print-reply --dest=org.ofono.phonesim /
+org.ofono.phonesim.Script.Run string:call.js
+
+Now you have simulated an incoming call.
+
+PS: If you want to know the hierarchy of UI elements, check the file
+src/controlbase.ui
+
+2. sms.js (stand for incoming sms and copy it to /tmp/sms/)
+tabSMS.gbMessage1.leMessageSender.text = "Yang";
+tabSMS.gbMessage1.leSMSClass.text = "1";
+tabSMS.gbMessage1.teSMSText.setPlainText("Sent from phonesim");
+tabSMS.gbMessage1.pbSendSMSMessage.click();
+
+Then do the similar things as first example:
+
+dbus-send --session --print-reply --dest=org.ofono.phonesim /
+org.ofono.phonesim.Script.SetPath string:/tmp/sms
+
+dbus-send --session --print-reply --dest=org.ofono.phonesim /
+org.ofono.phonesim.Script.Run string:sms.js
+
+Now you have simulated an incoming sms.
+
+3. Get the current path for script
+dbus-send --session --print-reply --dest=org.ofono.phonesim /
+org.ofono.phonesim.Script.GetPath
+
+4. Make script return some string
+The string can be any string, number, bool, date, etc in JavaScript, but it
+couldn't be a object because of some side effect. Refer "QScriptValue Class
+Reference" for details.
+For example, if you want to know the current incoming number, you may write a
+script as below:
+// number.js
+tabRegistration.gbIncomingCall.leCaller.text
+
+After running the script the similar way as above, you may get the number.
-- 
1.7.2.3


  reply	other threads:[~2010-10-14 12:34 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-10-14 12:34 [PATCH 1/2] Use org.ofono.phonesim.Script as interface name Yang Gu
2010-10-14 12:34 ` Yang Gu [this message]
2010-10-14 14:45 ` Denis Kenzior

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1287059682-12973-2-git-send-email-yang.gu@intel.com \
    --to=yang.gu@intel.com \
    --cc=ofono@ofono.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox