The One Ring
So you might be using Dialcentral and be thinking "the chat system is horrible and I want to use my system's contacts. Why can't it be integrated with my phone software like Skype?
You are in luck. The One Ring is a way for you to integrate That One Number to Rule Them All.
The One Ring lets you setup an account with the system similar to Google Talk, SIP, or Skype. You can then use the same chat interface you use with GoogleTalk as you use to Text through GoogleVoice. You also can initiate callbacks using the dialpad.
Contents |
Features
Basic features:
- Support for GV Contacts w/ names
- Can be disabled by setting the contact polling time to -1
- Support for people not on your contact list.
- Support for system contacts (Maemo 5 only)
- Setting of presence: Available, Away (check for messages less often), and Do Not Disturb (disables in-bound phone calls)
- Sending and receiving texts/voicemails
- Receiving texts can be disabled by setting the polling time to -1
- Initiating a google voice callback
Getting The One Ring
Getting The One Ring
- Maemo 4.1: Available in extras through the Application Manager.
- Maemo 5 or available in extras through the Application Manager.
- Ubuntu
The One Ring has been tested on:
- Ubuntu 10.04
- Maemo 4.1
- Maemo 5
Contribute
- File a bug
- View existing bug reports
- talk.maemo.org thread
- Garage Project (including code)
- Learn about extras-testing and checkout the Package page (including voting)
The One Ring is available under the LGPL v2.1 license
Troubleshooting and Reporting of Bugs
When Reporting a bug
Please report an approximate percentage of how reproducible the issue is
Please include what device and/or version of OS/software you are using
Does what you are doing work in Dialcentral?
Debug Prompt
Try out the Debug Prompt.
- Start a chat session with your account number
- Type "help" for a list of available commands
- Type "help COMMAND" for information on that command
- Report back the result of various commands
Log
Please include a log (will include sensitive information) when reporting issues. The log can be found at Code:
~/.telepathy-theonering/theonering.log
or be saved to a nicer location through the command prompt Code:
save_log ~/MyDocs/.documents
DBus
It would be really helpful if some dbus output was captured. To do that run the following command, reproduce the bug in The One Ring, and then stop logging by hitting Ctrl+c (Experienced DBUS people, is there a more specific command to filter for TOR only?) Code:
dbus-monitor --session > dbus.log
Note: DBus logs might include your password. I recommend grepping for and censoring it before sending it in.
Raw GV Data
If things are looking really bad I might request you also throw in this added little bundle of joy:
python /opt/telepathy-theonering/lib/gvoice/backend.py USERNAME PASSWORD
Whatever directory you are in it will dump a lot of files with sensitive information.
Internal Behavior
Checking for new Texts, Voicemail, and Contacts:
I know of no official API for Google Voice nor any way to reuse a connection. People have gotten push notifications to work but that was through hacks requiring forwarding texts to an email address that supported push notifications.
The One Ring has a master state machine with a state per presence. There are than state machines per item (contact list, texts, voicemail).
The contact list refreshes on a set schedule (every X minutes)
The voicemails refreshes on a set schedule (every X minutes) or every Y minutes for N times when you reject or miss a call.
When "Available" Texts refresh from every X seconds to every Y minutes, depending on how long its been since you've sent or last received a text. When "Away" texts refresh every Z minutes.
When configuring polling times, setting a value to "0" means "chose default" and "-1" means "never poll".
Sending a Text
On Maemo 5 there is an interface for texting and one for IM. The One Ring operates through the IM interface.
Callback Number
To provide flexibility with how Telepathy clients implement account configuration and screen names, you can set your callback number one of two ways
- In the account settings (usually under "Advanced")
- Through your screenname (sometimes called Nickname)
If you do not configure it in your account settings, The One Ring will guess which callback number to use and set your screen name accordingly. The priority in how it guesses which callback number to use is
- Area code is 747 (gizmo)
- Phone name includes "gizmo"
- Phone name includes "computer"
- Phone name includes "sip"
- anything else
Calls
When you make a call (whether through the dialpad or other means), a "phone call" will be started and immediately disconnect. This informed GV to start a call. Immediately after you should have the call connected.