siriproxy-vera plugin for using Siri to control Vera

Ok Brientim,

but in that instructions do not have a image to put in sd card (I’m using raspberry pi). and do not have a link for download a linux SO compatible.

then I am trying many linux installations and mixing many tutorials.

I would like to have a correct image to make the things work.

This job would help a lot of peoples because I already have a raspberry pi and I can say after if is working in that or not.

thanks in advance for your directions for me.

You should have installed the OS image as you indicated in the previous post:
I am using: Image 2013-09-10-wheezy-raspbian.zip

Then you need to follow Andrew instruction which is below and that will install the Siriproxy packages/programs. This is not an image for Siri but incremental steps one after another and your Rapberry image your setup earlier is Linux optimised for RaspberryPi.

[quote=“Brientim, post:20, topic:176496”]As per Andrew’s instructions you should be using:

https://github.com/plamoni/SiriProxy/[/quote]
Do not bounce between different instructions or you may strike trouble later.

Once you have Siri installed you will need to adhere to the remaining instructions that Andrew details in the README.md instructions.

Ok I will restart the process now…and saying for you what happens.

thanks !!!

As I read it briefly, the following

Phase 1 install OS image.
Phase 2 install Siri Proxy and generate certificate
Phase 3 return to Andrews instructions.

When you get to Phase 2, installing Siri, read it very carefully as in some areas it isn’t as clear as it could be and if you make a mistake, you do not need to reinstall the OS, but may need to return to the start of Phase if you do not know what went wrong.

When you get is up and running, the link below may be worth a read.

I still have this setup on an RaspberryPI as I mentioned for the test install but not in use.
My wife really hated Siri and that is really an under statement.

After phase 2, it would work by manually modifying the file but this level of work is not required if you follow Andrew’s setup. I do not have it running and it was setup manually as per Phase 2 when it was switched off.

look my steps and error below:

  1. install 2013-09-10-wheezy-raspbian image using win32diskmanager to my 8gb Sd card.
    Successful !

  2. put the sd card in raspberry and turn on.

  3. booting process and initial setup screen appears.

here: I think is interesting use the tips supplied for:

anyone gave me that tips… and at this moment nothing about siri is being did. only linux settings.

Steps I carried out are as follows. (Step 1 is critical on the Wheezy image):

expand_rootfs
change_locale
change_timezone
ssh (enable)
boot_behaviour (I turned off boot to desktop as I?ll do everything via command prompt and ssh
update

  • so far everything is ok.
  1. select finish

  2. type: sudo reboot

  3. reboot ok without errors.

  4. now I will use teraterm program to avoid change between inputs of my monitor.

  5. user raspberry password pi

  6. change the font to courier 12

  7. now I stop the instructions from : Articles

and go to : GitHub - plamoni/SiriProxy: A (tampering) proxy server for Apple's Siri
to use that instructions.

  1. run this command: sudo apt-get install libxslt1.1 libxslt-dev xvfb build-essential git-core curl libyaml-dev libssl-dev
    result: no errors.

  2. run this command: curl -L https://get.rvm.io | bash -s stable --ruby

  • here I can see in the screen some messages saying the files are being installed to /home/pi path !
  • is this correct ? if not, must be a instruction to create the right path before the process.
  1. this commands in order:

curl -L https://get.rvm.io | bash -s stable --ruby
echo ‘[[ -s “$HOME/.rvm/scripts/rvm” ]] && source “$HOME/.rvm/scripts/rvm”’ >> ~/.bashrc
echo ‘export PATH=$HOME/.rvm/bin:$PATH’ >> ~/.bashrc
. ~/.bashrc

  1. all ok ate here.

  2. run this: rvm install 2.0.0

  • error message:

Warning! PATH is not properly set up, ‘/home/pi/.rvm/gems/ruby-2.0.0-p247/bin’ is not at first place,
usually this is caused by shell initialization files - check them for ‘PATH=…’ entries,
it might also help to re-add RVM to your dotfiles: ‘rvm get stable --auto-dotfiles’,
to fix temporarily in this shell session run: ‘rvm use ruby-2.0.0-p247’.
Already installed ruby-2.0.0-p247.
To reinstall use:

rvm reinstall 2.0.0

That error message appears to be more of a warning than anything. The actual result of the command was that you already had ruby 2.0 installed (which is what you wanted). So you should be able to continue.

To fix the error message it could be caused by a few things.

First, you might want to restart your system (or simply the shell session) so that the .bashrc file is reloaded with the path info you had put in there in the previous step.
If that doesn’t work, double check your .bashrc file to ensure that the ‘export PATH=$HOME/.rvm/bin:$PATH’ is at the very bottom of the file.
If that doesn’t work, use this link to a google search of others whom have had this same error: Google

But, so far so good, it seems!

Andrew

andrew and brientim…

afther the error I decide continue:

  1. I decide go ahead:
    rvm use 2.0.0 --default

  2. gem install siriproxy

  3. mkdir ~/.siriproxy

  4. siriproxy gencerts

  5. rvmsudo siriproxy server -d 192.168.1.43 -u nobody

    • by the first time I can read: SiriProxy Up and Running
  6. install ca.pem to my iphone

  7. change dns in wifi settings to my pi ip.

  8. nothing happens when I spead Test Siri Proxy

how the service works ? background ? or blocking the console screen ?

First try restarting both. The Pi, first up to Siri running. Then restart your iPhone. Test Siri what the screen you should see some action if the phone is connected correctly.

I have finally my Rpi showing:

Siriproxy server up and running.

Elvis help me to set the dns in my iphone putting the 2 address, my router and Rpi ip.

but now I need test if my voice is arriving in my siriproxy server…

I speak: Siriproxy test
but siri in iphone do not understand this. and Rpi do not show any messages if something was received by him.

I want check if all is ok before proceed to do the settings for my vera.

AndrewGarfield…
is all ok with my rpi,

I need know now, where to put the codes (in which files) to do the rpi forward the commands to my vera unit.

thanks in advance…

You need to go through the steps of putting the info into the config.yml file.

This file is located in a hidden directory in your raspberry pi’s user’s home folder.

if you type ‘cd ~.siriproxy’ and then type ‘ls -l’ you should see this that you need to edit it. In order to edit it, use whatever text editor is on your raspberry pi. It is likely “nano”. So you’d type:

nano config.yml

Then type (or better yet, copy and paste) the info from the installation instructions, edit the config info to specifically locate your vera, and then press “control-x” and “y” to save. Then follow the rest of the steps.

Andrew

Ok Andrew,
I found the file and I know like edit even using vi.

I want know what lines to put in that file because I can see many ways to do. I want put this line like you are using if this is not a problem for you.

I have inserted this:

listen_for /Lights On/i do
say “Lights on”
open(‘http://192.168.0.4:3480/data_request?id=lu_action&serviceId=urn:micasaverde-com:serviceId:HomeAutomationGateway1&action=RunScene&SceneNum=10’)
request_completed
end

but nothing happens and service do not start.

thanks …

The initial change required is detailed here:

Brientim,
There do not exist a step to install the plugin.
I think the lines do this automatically when we run at first time.
This line below has the - before of the word name ? I put this lines and return error and server not ups.
The name Vera can be any word or must be the name of vera system ?

  • name: ‘Vera’
    git: ‘git://github.com/andrewgarfield/siriproxy-vera.git’
    vera_ip: ‘192.168.0.4’ # enter the ip or hostname for your vera
    vera_port: ‘3480’

Hello !
good news,

I have tried many times and now I have the plugin installed.

next step:

what file I do the associations to my scenes ? in the same file of the plugin ? (config.yml) ? or another ?

thanks, soon I will post a complete instructions for anyone get the plugin installed in your vera.

Piwtorak,

Happy to hear you have the plugin installed now.

There are no scene associations required. They are done for you from a configuration file pulled from your vera. Once you get the plugin installed (as you just did), it is designed to be self configuring.

Take a look at the usage section of the read me file on github to understand what you can say to it:

You should also read some of the FAQs on that same file to understand limitations and or some questions that I felt people would want to know.

By the way, I fixed some of the regex in the ‘set scene’ listener, so you might want to perform a ‘rvmsudo siriproxy update’ to get the latest version.

Andrew

Hello !
yes I am very happy !

the plugin recognizes my vera and show 64 scenes many dimmable lights and switches…

but I create a scene LIGHTS ON because I speak portuguese and my english is not so good, then I search the way more easy to speak.

and siriproxy receives the packet but siri in my iphone says I have update my iOS.

please check the picture…

If someone more want to start with this here goes:

  1. buy a raspberry pi, because this uses one of that. my option was:
    http://www.amazon.com/gp/product/B008XVAVAW/ref=oh_details_o00_s00_i00?ie=UTF8&psc=1

  2. use a SD card with 8gb. my is a kingston.

  3. download the image with siriproxy installed. is better than an pure image and install with your own hands.
    here: SiriProxy on Raspberry Pi download | SourceForge.net

  4. download the win32diskmanager to apply the image in the sd card.
    Win32 Disk Imager download | SourceForge.net

  5. format your SD card with fat32 format.

  6. apply the image to your SD card using win32diskmanager.

  7. put the sd card recorded in your raspberry pi (from now on: Rpi)
    connect a ethernet cable to your switch (is good have a DHCP installed in your network)
    connect HDMI cable to your monitor and change for that port to see the image from Rpi
    to be sure the things goes ok.
    in my case I did this only first time, after I am using Teraterm, download from: logmett.com - This website is for sale! - logmett Resources and Information.

and turn Rpi ON.
(is good read about Rpi, your way to remove SD and conections)

  1. it will boot with the image…and in some seconds you can see the login screen.
    in this image use:
    user: root
    passwd: siriproxy

  2. check the ip your Rpi takes from your DHCP and reserve in your router that ip.
    my case: 192.168.0.47

  3. add the lines below to your config.yml file in /root/.siriproxy, I use vi to edit then:

vi config.yml
type i (insert)
find the place to paste the lines ( yes you can paste in this window and turn the things easy)

to save use:
:x
to exit without save
:q <enter?

the lines are:

  • name: ‘Vera’
    git: ‘git://github.com/andrewgarfield/siriproxy-vera.git’
    vera_ip: ‘192.168.0.47’ # this is my ip address (change for yours)
    vera_port: ‘3480’

Note: this mus be inserted in plugins section and the “-” in the front of name is necessary.

  1. update the siriproxy:

rvmsudo siriproxy update

  1. The next step is to generate the certificate to be installed on your iPhone and to point your iPhone DNS to Raspberry Pi.

Generate the certificate by using the following command: siriproxy gencerts
Copy the certificate to your computer using teraterm using FILE/SSH SCP and email to your iphone the ca.pem file
the certificate is generated to : /root/.siriproxy

  1. run the certificate in your iphone and install it

  2. go to your wifi settings in iphone for that network and change DNS to ip address of your Rpi (in the my case: 192.168.0.47)

  3. for me helps change iphone to flight mode and wait 5 seconds or more and flight mode off.

  4. start your siriproxy service in your Rpi using: siriproxy server -d 192.168.0.47

  • change for your rpi address.
  1. if all is ok you can see the message: Siriproxy up and running. and before you will read the number of scenes you have in vera and dimmable devices, etc.

  2. at this time you can test…start siri in your iphone and instantly you can see many packets arriving in your rpi terminal screen.

  3. create a scene named: lights on
    and activate many devices to test.

  4. after create a scene you must stop service and start again, use ctrl C and
    siriproxy server -d 192.168.0.47
    to start again.

  • I do not know how do this automatically
    and another thing…when I close teraterm session, the siriproxy server stops too.

  • how can I leave siriproxy running even I am not connected to my Rpi by teraterm terminal ?

  • how can I do siriproxy starts with my Rpi, because power can goes off and I do not want all the time is open a session to start this service.

we have a problem in this moment and andrew was notified. let’s wait for him considerations…

thanks for all help to work this…

Hey Piwtorak,

I believe the reason why this is coming up is due to the brand new iOS 7 that just came out. In iOS 7 you can do things like setting airplane mode on/off, and setting bluetooth on/off, etc. Because of this I believe that the “set ” is conflicting with that.

Try one of the other ways of saying it such as “set scene Lights on” or “set scene to lights on”. I am hoping that they work. If they don’t I think i’ll have to update the phrasings to work around these new limitations. I did not notice this happening last night but it might be something new that Apple recently did.

If you can, try also the “turn on the ” command and see if that works.

Andrew

after all this time, just with me, I deserve this
:slight_smile: :slight_smile:

if this is a file to edit, I can help, where I find the file ?

if is compiled, only you is capable to change…

I will try but only night because my rpi was installed in my home and I am in the office now…

Well done! Good to see you are passing on your experience and no doubt it will help other that follow in your steps. Enjoy your the fruits “Raspberry flavoured” of your work.