Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Communication seems to work but no upload #23

Open
alfaraser opened this issue Nov 26, 2015 · 10 comments
Open

Communication seems to work but no upload #23

alfaraser opened this issue Nov 26, 2015 · 10 comments

Comments

@alfaraser
Copy link

Hi,

I'm a newbie in Linux and with this anyway. My Eyefi card ain my camera seems to communicate but it doesn't seem to upload any picture, not in the default directory nor any other.

This is the screenshot from the Server - what am I doing wrong ?

s1:StartSession>/SOAP-ENV:Body/SOAP-ENV:Envelope
[11/26/15 09:21AM][do_POST] - Got StartSession request
[11/26/15 09:21AM][startSession] - Delegating the XML parsing of startSession postData to EyeFiContentHandler()
[11/26/15 09:21AM][startSession] - Extracted elements: {'transfermode': u'16418', 'macaddress': u'00185621140b', 'cnonce': u'c166667ce6dba80a7281b17bd75fe55e', 'transfermodetimestamp': u'1448406154'}
[11/26/15 09:21AM][startSession] - Setting Eye-Fi upload key to c686e547e3728c63a8f78729c1592757
[11/26/15 09:21AM][startSession] - Concatenated credential string (pre MD5): 00185621140bc166667ce6dba80a7281b17bd75fe55ec686e547e3728c63a8f78729c1592757
[11/26/15 09:21AM][do_POST] - StartSession response: <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">SOAP-ENV:Body5d1382e08a89c2a367b2d1095a1df8c93b7674c8e07db92df6c098d9fcd742b2164181448406154false/SOAP-ENV:Body/SOAP-ENV:Envelope
192.168.1.110 - - [26/Nov/2015 09:21:07] "POST /api/soap/eyefilm/v1 HTTP/1.1" 200 -
[11/26/15 09:21AM][get_request] - Incoming connection from client 192.168.1.110
[11/26/15 09:21AM][finish_request] - Creating instance of main.EyeFiRequestHandler to service request from ('192.168.1.110', 8578)

@dgrant
Copy link
Owner

dgrant commented Nov 30, 2015

That's it? There's no more log after that?

@alfaraser
Copy link
Author

Hi David,

great you are still there, yes that's it.

I can wait for ages but there is nothing more coming.

I thing it hangs somewhere - as I even can not stop the server properly
with Ctrl + C

are there any special settings I should do when I configure the wifi
card with the windows machine to get the upload key ?

Thanks for all your Help.

Peter

On 30/11/15 20:12, David Grant wrote:

That's it? There's no more log after that?


Reply to this email directly or view it on GitHub
#23 (comment).

@mjb9
Copy link

mjb9 commented Dec 9, 2015

I am seeing a similar issue. My logs are longer:

[12/08/15 11:07PM][get_request] - Incoming connection from client 192.168.0.2
[12/08/15 11:07PM][get_request] - Incoming connection from client 192.168.0.2
[12/08/15 11:07PM][do_POST] - POST /api/soap/eyefilm/v1 HTTP/1.1
[12/08/15 11:07PM][do_POST] - Headers received in POST request:
[12/08/15 11:07PM][do_POST] - content-length: 408
[12/08/15 11:07PM][do_POST] - soapaction: "urn:StartSession"
[12/08/15 11:07PM][do_POST] - connection: Keep-Alive
[12/08/15 11:07PM][do_POST] - accept: text/xml, application/soap
[12/08/15 11:07PM][do_POST] - user-agent: Eye-Fi Card/3.0301
[12/08/15 11:07PM][do_POST] - host: api.eye.fi
[12/08/15 11:07PM][do_POST] - Attempting to read 408 bytes of data
[12/08/15 11:07PM][do_POST] - Finished reading 408 bytes of data
[12/08/15 11:07PM][do_POST] - Got StartSession request
[12/08/15 11:07PM][startSession] - Delegating the XML parsing of startSession postData to EyeFiContentHandler()
[12/08/15 11:07PM][startSession] - Extracted elements: {'transfermode': u'2', 'macaddress': u'0018562dac65', 'cnonce': u'3b27a6134e49b359ffcd0b631f019242', 'transfermodetimestamp': u'1449623982'}
[12/08/15 11:07PM][do_POST] - Got an an exception:
[12/08/15 11:07PM][do_POST] - Traceback (most recent call last):
File "/usr/local/bin/eyefiserver.py", line 496, in do_POST
response = self.startSession(postData)
File "/usr/local/bin/eyefiserver.py", line 879, in startSession
upload_key = mac_to_uploadkey_map[mac]
KeyError: u'0018562dac65'

Traceback (most recent call last):
File "/share/CACHEDEV1_DATA/.qpkg/Python/lib/python2.7/SocketServer.py", line 599, in process_request_thread
self.finish_request(request, client_address)
File "/share/CACHEDEV1_DATA/.qpkg/Python/lib/python2.7/SocketServer.py", line 334, in finish_request
self.RequestHandlerClass(request, client_address, self)
File "/share/CACHEDEV1_DATA/.qpkg/Python/lib/python2.7/SocketServer.py", line 655, in init
self.handle()
File "/share/CACHEDEV1_DATA/.qpkg/Python/lib/python2.7/BaseHTTPServer.py", line 340, in handle
self.handle_one_request()
File "/share/CACHEDEV1_DATA/.qpkg/Python/lib/python2.7/BaseHTTPServer.py", line 328, in handle_one_request
method()
File "/usr/local/bin/eyefiserver.py", line 496, in do_POST
response = self.startSession(postData)
File "/usr/local/bin/eyefiserver.py", line 879, in startSession
upload_key = mac_to_uploadkey_map[mac]
KeyError: u'0018562dac65'

@dgrant
Copy link
Owner

dgrant commented Dec 9, 2015

Can you please post your .conf file?

@alfaraser
Copy link
Author

Hi David, I assume you mean the defaultsettings.ini

which is this :

Main configuration

[Global]

The directives in this section affect the overall operation

of the Eye-Fi server

ListenPort: Allows you to bind the Eye-Fi server to a specific port.

#ListenPort=59278

ConsoleOutput: Logging can automatically be sent to the console.

Set this to False if you don't want any console output. Console

output is also considered stdout.

ConsoleOutput=True

LogFile: Controls where to write the Eye-Fi logs.

#LogFile=

LogLevel: The level of verbosity in both the logs and the console

output. From most verbose to lease verbose the settings are

DEBUG, INFO, WARNING, ERROR or CRITICAL

LogLevel=DEBUG

DownloadLocation: The directory in which to put the incoming pictures. By

default the pictures are put in a sub directory called "pictures" from

where

the script is originally started.

#On Windows:

This would set the downloads to a directory called pictures.

#DownloadLocation=.\pictures

#On Unix:
DownloadLocation=/tmp
#DownloadLocation=/pictures/

ExecuteOnUpload: This parameter is used to define an external program

or script to

execute after a file is uploaded. By nature this command is very

dangerous and should

be used carefully. Enabling this command can serve as a means of

compromising a

system or disclosing information via bugs in external programs or scripts.

This parameter executes the specified command on each incoming file

passing in the full

file path as the first argument. There is no default for this command

(nothing is executed

if this parameter is left blank).

#On Windows:

#ExecuteOnUpload=C:\Windows\system32\mspaint.exe

[Card]

The directives in this section affect the physical card settings

UploadKey: The Eye-Fi upload key. It is in C:\Documents and Settings\

\Application Data\Eye-Fi\Settings.xml. This needs to be set for

the server to function correctly.

UploadKey=c686e547e3728c63a8f78729c1592757

regards

Thanks for all your help

Peter

On 09/12/15 04:31, David Grant wrote:

Can you please post your .conf file?


Reply to this email directly or view it on GitHub
#23 (comment).

@mjb9
Copy link

mjb9 commented Dec 9, 2015

Here is my eyefiserver.conf file from my QNAP TS-251 server. This worked fine on my TS-221 running QTS 4.2, but I've not gotten it to transfer files on my TS-251 (which is probably running a different build of 4.2). I don't have access to the old TS-221 anymore so I can't compare with it. I put single quotes in front of the comments below as github kept interpreting the hashes as formatting characters. The real file does not have the comments starting with a single quote.

The version of Optware I am using is 0.99.163 from
http://download.qnap.com/QPKG/Optware_0.99.163.zip

I couldn't find a version on github.

eyefiserver.conf:

[EyeFiServer]

'# host name and port to listen on
'# you can leave hostname empty for localhost

host_name:
host_port:59278

'# To use this script you need to have your Eye-Fi upload key.
'# You can find it after configuring the card, 
'# which you can currently on do on windows or mac
'# It is inside C:\Documents and Settings\<User>\Application Data\Eye-Fi\Settings.xml on windows xp,
'# C:\Users\<User>\AppData\Roaming\Eye-Fi\Settings.xml on windows vista, 7 (& 10?)
'# or ~/Applications Data/Eye-Fi/Settings.xml on mac
'# search for it and paste it here:

mac_0:001856032c6b
upload_key_0:5bddb403289fdadf396f32b8a0276fd8

mac_1:0018562d572c
upload_key_1:31c0f3dd48d91dad78641324b6ce4587

mac_2:0018562dac65
upload_key_2:4d5b88981be644d138d005fb3a3414ad

mac_3:001856678943
upload_key_3:d9bbc9234b056f90df007facd6cf6b59

mac_4:0018566a52f0
upload_key_4:c2ff47fbafd65507e1774fdf4cf156bb

'# Create XMP file with geolocation information based on access points
'# detected by Eye-Fi card for any uploaded JPEG or RAW file
geotag_enable:0

'# Use access points detected within this period of time
'# before or after photo was taken, in seconds
geotag_lag:0

'# Use acquired geolocation data with accuracy over this value, in meters
geotag_accuracy:0

'# When connecting, all files are downloaded in one directory
'# the name of the directory can be a strftime formatted string like 
'# /home/myblog/pictures/%%Y-%%m-%%d
'# notice the double percent sign to escape % from ini interpolation

upload_dir:/share/Public/Backups/Picture Temp/Eye-Fi/%%m-%%d-%%Y

'# The UID of the user that you want to own the uploaded images
upload_uid:0
'# The GID of the group that you want to own the uploaded images
upload_gid:100
'# The permissions to use for the uploaded images
upload_file_mode:511
'# The permissions to use for the directories that are created
upload_dir_mode:511

@dgrant
Copy link
Owner

dgrant commented Dec 9, 2015

mjb9, on line 879, where it says: upload_key = mac_to_uploadkey_map[mac], right before that can you add a line that says "print "mac_to_uploadkey_map: ", mac_to_uploadkey_map" so it looks like:

print "mac_to_uploadkey_map: ", mac_to_uploadkey_map
upload_key = mac_to_uploadkey_map[mac]

@mjb9
Copy link

mjb9 commented Dec 10, 2015

Here are the logs. Seems to not like the "print "mac_to_uploadkey_map: ", mac_to_uploadkey_map" line now.

BTW, the GUI sometimes stops working (even with "WebUI = QTS_desktop" in the qpkg.conf file.) The GUI behavior is intermittent, but I only used it to look at the logs. But I noticed that the log is stored in /var/log/eyefiserver.log

[12/09/15 11:03PM][get_request] - Incoming connection from client 192.168.0.2
[12/09/15 11:03PM][do_POST] - POST /api/soap/eyefilm/v1 HTTP/1.1
[12/09/15 11:03PM][do_POST] - Headers received in POST request:
[12/09/15 11:03PM][do_POST] - content-length: 408
[12/09/15 11:03PM][do_POST] - soapaction: "urn:StartSession"
[12/09/15 11:03PM][do_POST] - connection: Keep-Alive
[12/09/15 11:03PM][do_POST] - accept: text/xml, application/soap
[12/09/15 11:03PM][do_POST] - user-agent: Eye-Fi Card/3.0301
[12/09/15 11:03PM][do_POST] - host: api.eye.fi
[12/09/15 11:03PM][do_POST] - Attempting to read 408 bytes of data
[12/09/15 11:03PM][do_POST] - Finished reading 408 bytes of data
[12/09/15 11:03PM][do_POST] - Got StartSession request
[12/09/15 11:03PM][startSession] - Delegating the XML parsing of startSession postData to EyeFiContentHandler()
[12/09/15 11:03PM][startSession] - Extracted elements: {'transfermode': u'2', 'macaddress': u'0018562dac65', 'cnonce': u'416ab52f629ec54b1fadba1620e6127e', 'transfermodetimestamp': u'1449623982'}
[12/09/15 11:03PM][do_POST] - Got an an exception:
[12/09/15 11:03PM][do_POST] - Traceback (most recent call last):
File "/usr/local/bin/eyefiserver.py", line 496, in do_POST
response = self.startSession(postData)
File "/usr/local/bin/eyefiserver.py", line 879, in startSession
print "mac_to_uploadkey_map: ", mac_to_uploadkey_map
KeyError: u'0018562dac65'

Traceback (most recent call last):
File "/opt/lib/python2.5/SocketServer.py", line 464, in process_request_thread
self.finish_request(request, client_address)
File "/opt/lib/python2.5/SocketServer.py", line 254, in finish_request
self.RequestHandlerClass(request, client_address, self)
File "/opt/lib/python2.5/SocketServer.py", line 522, in init
self.handle()
File "/opt/lib/python2.5/BaseHTTPServer.py", line 316, in handle
self.handle_one_request()
File "/opt/lib/python2.5/BaseHTTPServer.py", line 310, in handle_one_request
method()
File "/usr/local/bin/eyefiserver.py", line 496, in do_POST
response = self.startSession(postData)
File "/usr/local/bin/eyefiserver.py", line 879, in startSession
print "mac_to_uploadkey_map: ", mac_to_uploadkey_map
KeyError: u'0018562dac65'
[12/09/15 11:03PM][get_request] - Incoming connection from client 192.168.0.2
[12/09/15 11:03PM][get_request] - Incoming connection from client 192.168.0.2
[12/09/15 11:04PM][get_request] - Incoming connection from client 192.168.0.2
[12/09/15 11:04PM][get_request] - Incoming connection from client 192.168.0.2
[12/09/15 11:04PM][do_POST] - POST /api/soap/eyefilm/v1 HTTP/1.1
[12/09/15 11:04PM][do_POST] - Headers received in POST request:
[12/09/15 11:04PM][do_POST] - content-length: 408
[12/09/15 11:04PM][do_POST] - soapaction: "urn:StartSession"
[12/09/15 11:04PM][do_POST] - connection: Keep-Alive
[12/09/15 11:04PM][do_POST] - accept: text/xml, application/soap
[12/09/15 11:04PM][do_POST] - user-agent: Eye-Fi Card/3.0301
[12/09/15 11:04PM][do_POST] - host: api.eye.fi
[12/09/15 11:04PM][do_POST] - Attempting to read 408 bytes of data
[12/09/15 11:04PM][do_POST] - Finished reading 408 bytes of data
[12/09/15 11:04PM][do_POST] - Got StartSession request
[12/09/15 11:04PM][startSession] - Delegating the XML parsing of startSession postData to EyeFiContentHandler()
[12/09/15 11:04PM][startSession] - Extracted elements: {'transfermode': u'2', 'macaddress': u'0018562dac65', 'cnonce': u'693b0655d2eed16f0502b037f5b5aa6e', 'transfermodetimestamp': u'1449623982'}
[12/09/15 11:04PM][do_POST] - Got an an exception:
[12/09/15 11:04PM][do_POST] - Traceback (most recent call last):
File "/usr/local/bin/eyefiserver.py", line 496, in do_POST
response = self.startSession(postData)
File "/usr/local/bin/eyefiserver.py", line 879, in startSession
print "mac_to_uploadkey_map: ", mac_to_uploadkey_map
KeyError: u'0018562dac65'

Traceback (most recent call last):
File "/opt/lib/python2.5/SocketServer.py", line 464, in process_request_thread
self.finish_request(request, client_address)
File "/opt/lib/python2.5/SocketServer.py", line 254, in finish_request
self.RequestHandlerClass(request, client_address, self)
File "/opt/lib/python2.5/SocketServer.py", line 522, in init
self.handle()
File "/opt/lib/python2.5/BaseHTTPServer.py", line 316, in handle
self.handle_one_request()
File "/opt/lib/python2.5/BaseHTTPServer.py", line 310, in handle_one_request
method()
File "/usr/local/bin/eyefiserver.py", line 496, in do_POST
response = self.startSession(postData)
File "/usr/local/bin/eyefiserver.py", line 879, in startSession
print "mac_to_uploadkey_map: ", mac_to_uploadkey_map
KeyError: u'0018562dac65'

@mjb9
Copy link

mjb9 commented Dec 13, 2015

For some reason, and I don't have a clue as I changed nothing and the QNAP has not been restarted, it seems to be uploading. The GUI does not work, but I can live with that.

I've also done some experiments running Eye-Fi's server inside a Win 7 VM instance using QNAP's Virtualization Station on a TS-251 with 8GB of RAM. It works as well as the Eye-Fi's server running directly on a PC, although it's a bit inefficient with the QNAP's resources.

@Tomatenguru
Copy link

Hi,

I've the same Issue... Is there any further process here? I'm trying to modify my raspberry to catch the pictures from the mobi pro.

I added the

print "mac_to_uploadkey_map: ", mac_to_uploadkey_map

above the

upload_key = mac_to_uploadkey_map[mac]

in the py file.

The logs are:

[01/09/18 08:02PM][get_request] - Incoming connection from client 192.168.178.44
[01/09/18 08:03PM][get_request] - Incoming connection from client 192.168.178.44
[01/09/18 08:03PM][do_POST] - POST /api/soap/eyefilm/v1 HTTP/1.1
[01/09/18 08:03PM][do_POST] - Headers received in POST request:
[01/09/18 08:03PM][do_POST] - content-length: 439
[01/09/18 08:03PM][do_POST] - soapaction: "urn:StartSession"
[01/09/18 08:03PM][do_POST] - connection: Keep-Alive
[01/09/18 08:03PM][do_POST] - accept: text/xml, application/soap
[01/09/18 08:03PM][do_POST] - user-agent: Eye-Fi Card/5.3006
[01/09/18 08:03PM][do_POST] - host: mobi.api.eyefi.com
[01/09/18 08:03PM][do_POST] - Attempting to read 439 bytes of data
[01/09/18 08:03PM][do_POST] - Finished reading 439 bytes of data
[01/09/18 08:03PM][do_POST] - Got StartSession request
[01/09/18 08:03PM][startSession] - Delegating the XML parsing of startSession postData to EyeFiContentHandler()
[01/09/18 08:03PM][startSession] - Extracted elements: {'transfermode': u'546', 'macaddress': u'0018566ebe5e', 'cnonce': u'aed9824924e669732dc5941c093f6c0b', 'transfermodetimestamp': u'0'}
[01/09/18 08:03PM][do_POST] - Got an an exception:
[01/09/18 08:03PM][do_POST] - Traceback (most recent call last):
File "/usr/local/bin/eyefiserver.py", line 501, in do_POST
response = self.startSession(postData)
File "/usr/local/bin/eyefiserver.py", line 885, in startSession
upload_key = mac_to_uploadkey_map[mac]
KeyError: u'0018566ebe5e'

Traceback (most recent call last):
File "/usr/lib/python2.7/SocketServer.py", line 596, in process_request_thread
self.finish_request(request, client_address)
File "/usr/lib/python2.7/SocketServer.py", line 331, in finish_request
self.RequestHandlerClass(request, client_address, self)
File "/usr/lib/python2.7/SocketServer.py", line 652, in init
self.handle()
File "/usr/lib/python2.7/BaseHTTPServer.py", line 340, in handle
self.handle_one_request()
File "/usr/lib/python2.7/BaseHTTPServer.py", line 328, in handle_one_request
method()
File "/usr/local/bin/eyefiserver.py", line 501, in do_POST
response = self.startSession(postData)
File "/usr/local/bin/eyefiserver.py", line 885, in startSession
upload_key = mac_to_uploadkey_map[mac]
KeyError: u'0018566ebe5e'
[01/09/18 08:03PM][get_request] - Incoming connection from client 192.168.178.44
[01/09/18 08:04PM][stop_server] - Eye-Fi server stopped

Any ideas how to solve / proceed here? If there is any further information required, please let me know.

Many thanks in advance. :-)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants