If you wish to add a Location for a user to the MyAlerts database you will need to call the AddLocation method.
AddLocation
Input Parameters
The AddLocation method needs the following parameters:
ClientId
This method is available to developers from the UserManager.asmx Web Service.
Parameters
Name | Requirement | Description |
---|---|---|
ClientId | mandatory | This is the id for the client that was returned by the CreateSessionKey method. |
SessionKey | mandatory | This is the SessionKey for the client that was returned by the CreateSessionKey method. |
UserId | mandatory | This is the unique user id for the user as stored in the |
...
My Alerts database. | ||
TypeId | mandatory | This is always set to 1. |
Geography | mandatory | This is the X |
...
& Y coordinates for the location - These can be derived from the AstunLocationLookup table and take the form "POINT( 502582.58412372 |
...
159186.49997736)" Note: Must include leading space before X coordinate. | ||
UniqueId | mandatory | This corresponds with the UniqueId on the AstunLocationLookup table. |
Returned Parameters
The following parameters will be returned:
Returns
Code Block | ||||
---|---|---|---|---|
| ||||
<AddLocationResult> <Error> <Code>string</Code> <Description>string</Description> </Error> <Success>boolean</Success> <LocationId>string</LocationId> </AddLocationResult> |
Error- Code / Description
An error code and description if the call to the web service is unsuccessful and the Success if False.
1001 – Invalid Session key provided
Success
This will be either True or False. If False an error message will be provided in the Error result, if True the LocationId will be provided.
LocationId
This is the Location ID that has been generated in the MyAlerts database and will only be returned if the Success is True. This is useful for subsequent calls such as SetLocationValues and SetUserLayerGroup
...
Code Block | ||||||
---|---|---|---|---|---|---|
| ||||||
// Explanation of webservice parameters // [ClientId] and [SessionKey] are returned from the CreateSessionKey method // [TypeId] - This is always set to 1 // [Geography] - X,Y points - These can be derived from the AstunLocationLookup table and // take the form "POINT( 502582.58412372, 159186.49997736)" // [UniqueId] - This corresponds with the UniqueId on the AstunLocationLookup table UserManager.LocationAddResult res = umws.AddLocation( [ClientId], "[SessionKey]", [UserId], [TypeId], "[Geography], [UniqueId]); // LocationId is useful for subsequent calls such as SetLocationValues and SetUserLayerGroup string loc = res.LocationId; if (res.Success) Response.Write("Success"); else Response.Write("Fail"); |
...
Code Block | ||||||
---|---|---|---|---|---|---|
| ||||||
# Requires SUDS library to be installed
import suds
url = "http://[PATH TO WEBSERVICE]/usermanager.asmx?wsdl"
client = suds.client.Client(url)
result = client.service.AddLocation(,
[ClientId],
"[SessionKey]" ,
[UserId],
[TypeId],
[Geography],
[UniqueId])
loc = result.LocationId
if result.Success:
print "Success"
else:
print "Fail"
|
...