Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

In een sequence diagram ziet dit er als volgt uit:

 


Stap A + B: Het ophalen van actieve Contracten

...


Als eerste haalt de Media Partner alle actieve Contracten op. Dit gaat met een HTTP GET request op alle MediaContracts met de status van het Contract 'active'. De URL van dit GET request ziet er voor versie 116.0 van de connector en token ABCDEFG als volgt uit:

httphttps://api.wazzupsoftware.com/ActivateService.svc/116/0/ABCDEFG/mediacontract/?state=active


Hieronder een C# code voorbeeld:

Code Block
languagecsharp
themeFadeToGreylanguagecsharp
linenumberstrue
private IList<MediaContractSnapshot> getMediaContractSnapshots(string constractState)
{
     var url = string.Format(@"{0}ActivateService.svc/116/0/{1}/mediacontract/?state={2}",
                m_connectorURL, m_token, constractState);
     var result = XmlLib.GetObject<MediaContractSnapshotResult>(url);
     if (!result.IsSuccess)
            throw new Exception(result.ErrorMessage);
     return result.ArrayOfMediaContractSnapshot;
}

...

Het ophalen van de Summaries gaat met een HTTP GET request. De URL van dit GET request ziet er voor versie 116.0 van de Connector, token ABCDEFG en Realtor ID 376 (uit het MediaContract uit stap A + B) als volgt uit:

httphttps://api.wazzupsoftware.com/OutputService.svc/116/0/ABCDEFG/realestatesummary/?realtorid=376

Hieronder een C# code voorbeeld:

Code Block
language
languagecsharp
themeFadeToGrey
csharplinenumberstrue
public IList<RealEstatePropertySummarySnapshot> GetRealEstatePropertySummaries(int realtorID)
{
    modifiedSinceUTC = modifiedSinceUTC ?? new DateTime(1900, 1, 1).ToUniversalTime();
    var url = string.Format(@"{0}OutputService.svc/116/0/{1}/realestatesummary/?realtorid={2}", m_connectorURL, m_token, realtorID"));
    var result = XmlLib.GetObject<RealEstatePropertySummarySnapshotResult>(url);
    if (!result.IsSuccess)
        throw new Exception(result.ErrorMessage);
    return result.ArrayOfRealEstatePropertySummarySnapshot;
}

...

Komt de Media Partner met behulp van de Summaries tot de conclusie dat de pandgegevens in de database van de Media Partner niet meer actueel zijn dan kan hij de actuele gegevens ophalen door middel van een HTTP GET request. De URL van dit GET request ziet er voor versie 116.0 van de Connector, token ABCDEFG en Realtor ID 376 (uit de Summary uit stap C + D) en Real Estate Property ID 1365 (uit de Summary uit stap C + D) als volgt uit:

https://api.wazzupsoftware.com/OutputService.svc/116/0/ABCDEFG/realestate/?realtorid=376&id=1365

Hieronder een C# code voorbeeld:

Code Block
languagecsharp
themeFadeToGreylanguagecsharp
linenumberstrue
public RealEstateProperty GetRealEstateProperty(int realtorID, int realEstateProperyID)
{
	var url = string.Format(@"{0}OutputService.svc/116/0/{1}/realestate/?realtorid={2}&id={3}",
		m_connectorURL, m_token, realtorID, realEstateProperyID);
	var result = XmlLib.GetObject<RealEstatePropertyResult>(url);
	if (!result.IsSuccess)
		throw new Exception(result.ErrorMessage);
	return result.RealEstateProperty;
}  

...

Wat er na het ophalen van een Real Estate Property gebeurt is per Media Partner verschillend. De één verwerkt de gegevens in haar database waarna deze op de portal verschijnt; de ander start met DTP werkzaamheden en maakt m.b.v. de gegevens een papieren brochure. Voor de ene Media Partner heeft de pandgegevens binnen enkele seconden verwerkt; de ander heeft enkele dagen nodig. Maar zodra de Media Partner zijn werk voor het pand heeft afgerond bevestigt de Media Partner dit aan de Connector. Deze Connector geeft dit bericht vervolgens weer door aan de makelaar via de software van de Content Provider (b.v. VenumKolibri). Ook kan er extra informatie toegevoegd worden bij deze bevestiging; namelijk een bericht en een url. In het bericht informeert de Media Partner de makelaar over het eindresultaat van de succesvolle verwerking en de optionele url verwijst naar een webpagina waar de makelaar het resultaat kan bewonderen. Een voorbeeld van een bericht kan zijn "De pandgegevens zijn succesvol verwerkt in onze database." en een url bijvoorbeeld "httphttps://www.fundamediapartner.nl/panddetails.aspx?pandid=1234woningaanbod/koop/arnhem/jansbuitensingel/7").

De ene Media Partner verwerkt continu de wijzigingen van het pand. Zo zal een Portal altijd de meest recente gegevens willen ontvangen en tonen op haar site. Telkens als deze Media Partner pandgegevens ontvangt bevestigd de Media Partner de succesvolle verwerking aan de Connector. En dit geldt dus niet alleen als het pand voor het eerst wordt aangeboden, maar ook telkens als er wijzigingen zijn doorgegeven en verwerkt door de Media Partner.

...

Het bevestigen van een succesvolle verwerking van de pandgegevens gaat door middel van een HTTP POST actie. De URL van zo'n POST actie ziet er voor versie 116.0 van de Connector, token ABCDEFG en Realtor ID 376 (uit de Summary uit stap C + D) en Real Estate Property ID 1365 (uit de Summary uit stap C + D) als volgt uit:

https://api.wazzupsoftware.com/OutputService.svc/116/0/ABCDEFG/realestate/?realtorid=376&id=1365&action=confirm&url=http%3a%2f%2fwww.funda.nl%2fpanddetails.aspx%3fpandid%3d1234&message=De+pandgegevens+zijn+succesvol+verwerkt+in+onze+database.

Hieronder een C# code voorbeeld:

Code Block
language
languagecsharp
themeFadeToGrey
csharplinenumberstrue
public void ConfirmRealEstatePropertyRetrieval(int realtorID, int realEstateProperyID, string mediaPartnerUrl, string message)
{
    var url = string.Format(@"{0}OutputService.svc/116/0/{1}/realestate/?realtorid={2}&id={3}&action={4}&url={5}&message={6}",
        m_connectorURL, m_token, realtorID, realEstateProperyID, "confirm", HttpUtility.UrlEncode(mediaPartnerUrl), HttpUtility.UrlEncode(message));
    var result = HttpLib.PostMessage<DefaultResult>(url);
    if (!result.IsSuccess)
        throw new Exception(result.ErrorMessage ?? "Unknown error message.");
}  

...

De URL van een POST actie waarmee het pand wordt geweigerd ziet er voor versie 116.0 van de Connector, token ABCDEFG en Realtor ID 376 (uit de Summary uit stap C + D) en Real Estate Property ID 1365 (uit de Summary uit stap C + D) als volgt uit:

https://api.wazzupsoftware.com/OutputService.svc/116/0/ABCDEFG/realestate/?realtorid=376&id=1365&action=reject&message=Dit+pand+heeft+geen+foto%27s.+Voeg+foto%27s+toe+voor+een+succesvolle+verwerking.

Hieronder een C# code voorbeeld:

Code Block
languagecsharp
themeFadeToGreylanguagecsharp
linenumberstrue
public void RejectRealEstatePropertyRetrieval(int realtorID, int realEstateProperyID, string message)
{
    var url = string.Format(@"{0}OutputService.svc/116/0/{1}/realestate/?realtorid={2}&id={3}&action={4}&message={5}",
        m_connectorURL, m_token, realtorID, realEstateProperyID, "reject", HttpUtility.UrlEncode(message));
    var result = HttpLib.PostMessage<DefaultResult>(url);
    if (!result.IsSuccess)
        throw new Exception(result.ErrorMessage ?? "Unknown error message.");
}

 

...