Hi all. I'm hoping there's a more elegant solution, because the one I have brewed up is extremely inconsistent, and I can't figure out why...
So I would like to put our company logo on all our IP phones - I have the images on the TFTP server, I have the List.xml file setup - that's all working great. Now what I'd like to do is "force" the phones to use my background - I don't really care how, whether it be removing the "default" background of just lines, something in CUCM to force the background, anything.
I've tried a piece of software called "Background Deployment" from a company called VoIP Integration - the software was extremely buggy, crashed frequently, and it required port 80 on my local workstation be open to every phone. That's just not going to happen, for many reasons. All the phones can already "see" the background, it's just a matter of setting it.
I found another method that simulates key presses - and I wrote an AutoHotKey script around this concept using WGET. It works fantastically on my phone, but when I try to run the script on a batch of phones it fails inconsistently. I haven't been able to figure out why, other than maybe random phones do not get the keypresses because of latency? It's obviously very time-sensitive, so if a user hits a key, if the phone takes longer than "normal" to find the BG from the TFTP server, etc. Too many things to break.
So does Cisco have a method to do this in bulk? Seems like there should be a way, but I haven't been able to find any. There's too many problems with my script to use it relaibly, and since I'm just simulating button presses I have no way to tell which phones got the background and which phones didn't. Any help would be greatly appreciated on this matter, thank you in advance!!
This has been requested before, but I have not seen anything official about when it would be available. Are you running a UC500 or CUCM?
CUCM 7.1. Just upgraded from 6 about 3 weeks ago maybe? Will it be available in 8?
In my head it seems like something so simple, and Cisco loves to kill you with configuration options - I'm baffled there isn't any for this.
I don't know if it will be available in CUCM 8, but this isn't monitored by the people who would know. This is the small business support community, and unfortunately I haven't been keeping up with CUCM since about 4.2 and when 5.0 was coming out. I would recommend opening a TAC case or posting on netpro. That should be far more helpful.
Ah, I wasn't sure what the response on here would be - so far quick!
I have posted on NetPro already. I'm considering opening a TAC, but my manager warned me of opening "frivolous TAC's" - and I'm concerned this would be considered frivolous. Ah well, I do appreicate the speedy responses... I pretty much got the same answer @ NetPro, but with a lot more flaming ;)
I was wondering if you have made any progress on this issue? I am having the same issues with the Backgroup Deployment tool, as such looking for an alternative.
Well, I managed to get it done with AutoHotKey, WGET and NMAP. It took quite a bit of work, but I have something that's usuable in our environment. It's not pretty, it literally mimicks button presses that the user would have to press to change the background. It also has no connection into CUCM (which would be nice, but I have no clue where to even start for that) so the only way that it knows the phones is by IP address. And you guessed it, I just give it a range of IPs, and it hammers thru them all one-by-one. So it's pretty messy, but it works. I just have to enable "web-access" on the phones that I'm changing, and since it just bashes thru a list of IPs, I have to make sure that web-access is only enabled on the phone model's that I'm updating (ie the process for updating a 7962's background is different from a 7911.)
Would you mind posting your script and process, looking to do this as well on a mass deployment and trying to come up with the most efficent way to push out the BG images.
Sorry, not going to post the custom script that I built. Took me a while to flesh it out, and it's really not very pretty - therefore I'm not going to be passing it out. If I thought I could clean it up I may sell it, but I'm not sure. Like I said, the method I used is pretty quick-n-dirty, I'm sure there's a much better way.
I can point you in the direction of some documentation that helped me...
This thread helped me with the syntax immensely.
Official Cisco doc on programming these phones (has all the commands, etc)
My other posts talk about my process. Basically using nmap to discover if the device I'm pushing to is up on port 80, then telling wget to push a succession of commands. I've also written a "Control Phone" script using this so I can get screenshots and press individual buttons on the phones. Originally it was just a script that trolled a span of IP addresses and pushed to the available ones, and after I got all the phones pushed (again not pretty, and there's no way I can tell if every phone got it without touching every phone... it'd take a while) I haven't really used that script much at all. I basically just use the control phone script to troubleshoot problems remotely and when I'm feeling lazy and just want to click on my screen to call an automated system