Monday, 21 October 2019

***Volunteer Opportunity*** OSM mapping in response to Typhoon Hagibis in Japan

Dear GISCorps Volunteers,

The Humanitarian OpenStreetMap Team (HOT) is looking for digitizers and validators to support their response to Typhoon Hagibis in Japan. There are currently four building-only tasks that are designed for beginner mappers. As always, detail-oriented validators are in high demand.

Typhoon Hagibis Tasks:

https://tasks.hotosm.org/contribute?difficulty=ALL&text=Hagibis

Please remember to add #GISCorps to all your changeset comments.

If you’re not a HOTOSM mapper yet but would like to join, here’s a great place to start: https://tasks.hotosm.org/learn
__________________________

We have a new HOT Project page on our website if you haven’t seen it. There you can see current HOT projects that GISCorps is activated for, as well as a link to our new ‘HOT Volunteer Hours’ form if you would like a certificate and credit toward your GISP - https://www.giscorps.org/hot-projects/.

Here’s a direct link to the HOT Volunteer Hours form (please include a valid link to your HOTOSM profile so that we can verify your contributions): https://forms.gle/sgH5tTaFdYbR2neC8

Thanks for all you do!
GISCorps Recruitment Team

Wednesday, 25 September 2019

GIS Corps Volunteer Assignment - Mobile Data Collection Application

Dear GISCorps Volunteers,

The SEA People is requesting one GISCorps volunteer to help design and implement a Mobile Data Collection Application and backend data structure for a citizen science initiative monitoring marine conditions and species during dives by commercial guides in the Raja Ampat Marine Park, Indonesia.  The SEA People is a not-for-profit community organization based in France that is dedicated to environmental education, protection and conservation of coral reefs. This association works in Indonesia, in the archipelago of Raja-Ampat, based in Wasai, in the Dampier Strait. This region is interesting for the richness of the marine species that it shelters and for the state of conservation of the ecosystems that it shelters.

The GISCorps volunteer will assist in building a Mobile Data Collection App that will be used by dive guides in the Raja Ampat Marine Park. The application will be part of the “Eyes on the Reef” project to assess and monitor the impacts of tourism on the marine ecosystem in the park. The application will collect information about the location and number of important marine species as well as the conditions at the time of the observations. The application will need to be designed so that it can be rapidly filled out on a mobile device after completion of a dive. In addition, the volunteer will help manage the ArcGIS Online organization and build dashboards that help to display and rapidly communicate the results of the data collection to stakeholders.

Qualifications:

• Advanced skills in ArcGIS Online (AGO) including experience in the following:
 -Survey123/Quick Capture/Collector
 -Working with hosted feature layers including domains and related tables
 -Creating operations dashboards
 -Administering AGO organizations (creating user accounts, roles, and privileges)
 -Experience creating visually appealing and intuitive applications on desktop and mobile devices is desired.
• Advanced experience with designing databases, specifically in relation to field data collection
• Experience with quality control and assurance in database design
• Excellent verbal and written communication skills

Duration: The volunteer shall commit to 5-7 hours per week for an approximate duration of six months.

Software: The AGO environment will be provided by the SEA People.

Type of mission: this mission does NOT require traveling and can be conducted remotely. The volunteer will use their own hardware and will work closely with the SEA People representatives in France or Indonesia throughout the project via email and web conferencing. French and Bahasa Indonesia language skills are not required.
If you are interested and available, please send an email with “Eyes on the Reef” in the subject along with your resume to [email protected] by Thursday, October 3, 2019.

Regards,

Monday, 17 June 2019

Create UNIX timestamp for ArcGIS Server Feature REST API

When you feed or update datetime column in ArcGIS REST API the current date and time has to be in UNIX epoch milliseconds.

In Python this is the easiest way to do:

int(time.time())*1000
The *1000 is required to get the milliseconds from the seconds. Obviously this way is only accurate to the second...if you want to gain more precision you should perhasp go with this:
float(time.time())*1000
With this methodology you will not loose the milliseconds due to integer rounding.

Friday, 14 June 2019

Cannot convert a value of type \'java.lang.String\' to \'TIMESTAMP\'

The ArcGIS REST API just needs an epoch time bigint - so convert it to numbers.

To check the values this site works:
https://currentmillis.com/



How to prepare JSON payload for ArcGIS Feature Service using Python

There you have it - this is just a dump from my code - purely to remind myself...

What it does it creates a point array then using Python it puts this payload to an ArcGIS Feature Service.


ptemp = {}
... print type(ptemp)
... ptemp["attributes"]={}
... ptemp["attributes"]["objectid"]=1
... ptemp["attributes"]["s"]=223
... ptemp["attributes"]["a"]="a val"
... ptemp["attributes"]["n"]="n val"
... ptemp["attributes"]["b"]=123
... ptemp["attributes"]["p"]="p val"
... ptemp["attributes"]["g1"]=11
... ptemp["attributes"]["g2"]=22
... ptemp["attributes"]["g3"]=33
... ptemp["attributes"]["g4"]=44
... ptemp["attributes"]["g5"]=55
... ptemp["geometry"]={}
... ptemp["geometry"]["x"]=152.95359856272353
... ptemp["geometry"]["y"]=-23.461733290059232
... ptemp["geometry"]["spatialReference"]={"wkid" : 4326}

So we created the ptemp dictionary object with point parameters.

>>> url = config["serviceurl"]+"/0/addFeatures?token={}&f=pjson"
... token = getToken("uname", "password")
... url = url.format(token)

Now we acquired the token and added to url.

>>> pptemp = []
>>> pptemp.append(ptemp)

Now we just put the dictionary to a list - this needed for the ArcGIS Feature Service.

pt = urllib.quote_plus(json.dumps(pptemp))

Now we created an encoded payload from json string.
st='features='+pt
st=st+'&gdbVersion=&rollbackOnFailure=true&f=pjson'
...and finally we send all of these to the ArcGIS Feature Service in a POST request:

>>> request.add_header("Content-Type",'application/x-www-form-urlencoded')
>>> request = urllib2.Request(url, data=st)
>>> connection = opener.open(request)
>>> connection.readlines()

Monday, 3 June 2019

Goliath Search Engine Resources

Here we list all resources we have found in relation with Goliath Search Engine. Entries and indexes were found all around the web. These indexes are listed below:

Search Engine with a Difference - Goliath Search

I have been stumbled across with a new Search Engine called Goliath Search. It seems a standard web search engine at first but using it a few times made me realize that search results are really different than using Google and Bing - I would say the provided search results are more aligned with the search term and really didn't brought up any spam-like websites either.

What I really liked that this search engine also provides you with a PDF search facility. This means that all of returned search results are actually PDF documents rather web pages. This is a very unique feature, which no other search engine provides - unless the user puts special codes in to the search term.

All in all - Goliath Search is a rather unique search engine and I shall recommend all my readers to give it a try...its free :)

Read more about this search engine...access some additional features of this search engine here...