Yealink Forums

Full Version: Status Text on display (only few chars)
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Hi everyone!

After carefully reading through the documentation, I am almost sure that this feature is not around, and I'd like to put this topic to discussion:
(If there is however such a function, could anyone please point out how to do it?)

Our asterisk-based enviroment is taking care of all the functions that are in most cases handled by the phone (e.g. DnD, Redirects), as our customer assumes this gives them an extra of flexibility...

Phones in use are mainly T26/T28, with the newer series (T38,...) being introduced with the premium packages

What we'd need is some kind of status string that is displayed on the phone's idle screen and that we could update using some kind of technology that would be easy to implement and handle. Things that come to my mind:

- SIP-Packets
- HTTP request from/to phone
- Asterisk SendText/MessageSend Command (which would be SIP packets again)
- ... (other suggestions here please )

The text should be displayed until the next update

A few characters would be enough: An R for example signifying that there is a redirect enabled D für do not disturb RD for both, or so

Do you gyus at Yealink think that's doable and that there is a General need for that function?
Hi everyone!

Figured it out myself (sorry for bothering you in the forums).
There's a good document around:

http://www.yealink.com/Upload/document/X...635570.pdf

Didn't think it was part of the XML documentation...

best George
Hi!

having progressed, I'd like to share my Results with you...
Here a short perl-demonstration-script that sends a message to a phone...

@Forum-Admins: I hope you regard this as appropriate...
#!/usr/bin/perl
use IO::Socket;
use strict;

my %config = qw(NOTIFY_LOCAL_IP 172.27.255.254 NOTIFY_SOURCE_USER msgdispatch SOURCE_PORT 8888);

sipSendNotify('4711','10.27.0.12',"Redir on (102)",45);


sub sipSendNotify
# 0: Phone-User
# 1: Phone-IP
# 2: Message
# 3: Timeout
{
my $phoneIP = $_[1];
my $phoneUser = $_[0];
my $msg = $_[2];
my $timeout = $_[3];

my $payload="<YealinkIPPhoneStatus Beep=\"yes\" wrapList=\"no\" Timeout=\"$timeout\">
<Session>0</Session>
<Message Size=\"large\" Align=\"center\" Icon=\"Forward\">$msg</Message>
</YealinkIPPhoneStatus>
";

my $MESG="NOTIFY sip:$phoneUser\@$phoneIP:5062 SIP/2.0
Via: SIP/2.0/UDP $config{NOTIFY_LOCAL_IP}
From: <sip:$config{NOTIFY_SOURCE_USER}\@$config{NOTIFY_LOCAL_IP}>
To: <sip:$phoneUser\@$phoneIP>
Date: ".localtime(time())."
Call-ID: ".time()."msgto$phoneUser\@$config{NOTIFY_LOCAL_IP}
CSeq: 1300 NOTIFY
Contact: <sip:$config{NOTIFY_SOURCE_USER}\@$config{NOTIFY_LOCAL_IP}>
Event: yealink-xml
Content-Type: application/xml
Content-Length:".length($payload)."

$payload";



my $sock = new IO::Socket::INET (
LocalPort => $config{SOURCE_PORT},
PeerAddr => $phoneIP,
PeerPort => '5062',
Proto => 'udp',
);
die "Could not create socket: $!\n" unless $sock;

print $sock $MESG;



}
Hi GeorgSchwarz,

Thanks. I appreciate your share.Smile
Reference URL's