This project is a collaboration between ZSL and ExCiteS and aims to provide a way for forest peoples – indigenous Baka hunter-gatherers and Bantu farmers in Cameroon – to report illegal wildlife crime.
Who are the users?
Indigenous Baka hunter-gatherer and Bantu farming communities in south-eastern Cameroon. The participating communities are largely non-literate or illiterate, and therefore the Sapelli projects are entirely icon-based. Each individual community has a unique project, adapted from a general common template, to provide locally-relevant icons and exclude those icons which may be confusing for local people.
An example project
As progress is made through the decision tree, items to report become increasingly specific, for example a specific type of gun or ammunition. The possibility then arises of taking photos and/or audio recordings, as well as a GPS point.
A key difficulty in such a project is the interface interaction; these are participants who have never seen or used a touchscreen phone, and don’t necessarily understand functional symbols such as ticks, crosses, and arrows. However, such issues can be overcome with training sessions and a bottom-up approach involving building the Sapelli project with local people and incorporating local ideas and icon designs into the XML coding.
You can download the Wildlife Crime project here: Wildlife Crime v1.0
Data transmission
Records are stored on the phone’s SD card, and automatically transmitted by a data connection to the GeoKey server. Such transmission mechanisms can prove problematic in a rural rainforest environment, but this can be addressed with the addition of an SMS transmission mechanism – sending data to a project receiver phone – as well as setting up a 1-minute transmission interval. Data is sent to officers in Cameroon’s Ministry of Forestry and Wildlife, via NGO partners, which is automatically displayed on GeoKey’s GIS interface, Community Maps.
Project XML
Here you can find the code for this project. Comments have been included in italics in order to guide you through the XML file.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 |
<?xml version="1.0" encoding="UTF-8"?> <!-- The unique Sapelli Project ID number, name of the project and version number are declared. Default language is set to French. --> <SapelliCollectorProject id="000" name="Akonetye" version="1.0" defaultLanguage="fr-FR" > <!-- This Project contains one Form which is given the ID name "Akonetye". An image for the project shortcut is defined. This Form element contains all the Choice, Media and Location fields below. --> <Form name="Akonetye" obfuscateMediaFiles="true" shortcutImage="RottingElephant.png" > <!-- This first Choice field is the 'root' of the decision tree and contains all the other Choice elements within the tree. It is provided with an ID name, which will be the header for the collected data. The choices contained within this element will be displayed within two columns and two rows on the device's screen. --> <Choice id="Report" cols="2" rows="3" > <!-- Following the root choice, all choices are given an image file that will show as an icon as well as the rows and columns information for the 'child' screen --> <Choice img="ActivePoachersCamp.png" rows="2" cols="2"> <Choice img="ActivePoachersCamp.png" rows="2" cols="1" > <Choice img="Trophies.png" cols="2" rows="2"> <!-- The final choices (or decision tree leaves) have a 'value' that will be stored when data is collected --> <Choice value="Cabine active de braconnier avec Ivoire d'éléphant" img="Tusks.png"/> <Choice value="Cabine active de braconnier avec Cache d'ivoire" img="IvoryStock.png"/> <Choice value="Cabine active de braconnier avec Sacs de viande de brousse" img="SacksOfBushmeat.png"/> <Choice value="Cabine active de braconnier avec Autra trophée" img="Questionmark.png"/> </Choice> <Choice value="Cabine active de braconnier sans trophées" img="NoTrophies.png"/> </Choice> <Choice value="Récemment abandonné braconnier cabine" img="RecentlyAbandoned.png"/> <Choice value="Cabine de braconnier abandonée de plus" img="AbandonedForAWhile.png"/> </Choice> <Choice img="Weapons.png" rows="3" cols="2"> <Choice value="Cartouche de calibre-douze" img="ShotgunCartridge.png"/> <Choice value="Cartouche de fusil" img="RifleBulletHousing.png"/> <Choice value="Fusil" img="WWIIRifle.png"/> <Choice value="AK47" img="AK47.png"/> <Choice value="Calibre-douze" img="ShotGun.png"/> </Choice> <Choice img="RottingElephant.png" rows="2" cols="2"> <Choice value="Éléphant tué" img="RottingElephant.png"/> <Choice value="Gorille tué" img="DeadGorilla.png"/> <Choice value="Pangolin tué" img="DeadPangolin.png"/> <Choice value="Traînée de sang" img="Blood Trace.png"/> </Choice> <Choice value="Trophies" img="Trophies.png" rows="2" cols="2"> <Choice value="Ivoire d'éléphant" img="Tusks.png"/> <Choice value="Cache d'ivoire" img="IvoryStock.png"/> <Choice value="Sacs de viande de brousse" img="SacksOfBushmeat.png"/> <Choice value="Autra trophée" img="Questionmark.png"/> </Choice> <!-- No photo should be taken of a man with a gun (due to danger of situation). In this situation, a direct jump to location recording is executedd --> <Choice img="ManWithGun.png" rows="2" cols="1" jump="Audio"> <Choice value="Poacher" img="ManWithGun.png" rows="3" cols="1"> <Choice value="Un braconnier" img="ManWithGun.png"/> <Choice value="Deux braconniers" img="2MenWithGuns.png"/> <Choice value="Beaucoup braconniers" img="ManyMenWithGuns.png"/> </Choice> <Choice value="Traînée de braconnier" img="Footsteps.png"/> </Choice> <Choice value="Species monitoring" img="Gorilla.png" rows="2" cols="1"> <Choice value="Gorilla" img="Gorilla.png" rows="2" cols="1"> <Choice value="Vu gorille" img="Seen.png"/> <!-- In order to record Gorilla sounds, a direct jump to audio recording is executed --> <Choice value="Entendu gorille" img="Heard.png" jump="Audio"/> </Choice> <Choice value="Elephant" img="Elephant.png" rows="2" cols="1"> <Choice value="Vu éléphant" img="Seen.png"/> <!-- In order to record Elephant sounds, a direct jump to audio recording is executed --> <Choice value="Entendu éléphant" img="Heard.png" jump="Audio"/> </Choice> </Choice> </Choice> <!-- The Photo element is given an ID name, this Field has been declared as optional for the user. --> <Photo id="Photo" optional="true"/> <!-- The Audio element is given an ID name, this Field has been declared as optional for the user. A custom image is set to represent an audio recording on the review screen. --> <Audio id="Audio" optional="true" recordingImg="AudioClip.png" /> <!-- The Location element is given an ID name. The user's location will be recorded using GPS if a location better than 50m accuarcy is captured. Altitude will be discarded. The location field will be skipped when the user goes backwards through fields they have already encountered. --> <Location id="Location" maxAccuracyRadius="50.0" storeAltitude="false" skipOnBack="true"/> <!-- This Choice field is another root of a 'decision tree' and requires an id. However, noColumn is set to true which means that this tree will not produce any data, it only directs the user through to the end of the project. --> <Choice id="Confirmation" optional="never" rows="2" showCancel="false" noColumn="true"> <!-- If the user were to click the confirm button, a speciial jump is executed to save the collected data and start the form again. --> <Choice img="Confirm.png" jump="_SAVE+LOOPFORM"/> <!-- When pressing the "discard" Choice image, a Special Jump "_END" will be executed, meaning that this option will not save the user's data, will clear the data from the Form and start the form again. --> <Choice img="Discard.png" jump="_LOOPFORM "/> </Choice> </Form> </SapelliCollectorProject> |