Ejemplo n.º 1
0
        public void GetNextEvents(string locationurl, string date, int count, long id, string lang)
        {
            string query = DataConstants.GetQuery("base") + string.Format(DataConstants.GetQuery("NextEventsOnLocation"), locationurl, date, count);

            //System.Console.WriteLine(query);
            endpoint.QueryWithResultSet(query, new SparqlResultsCallback(callback), new CallbackData {
                Id = id, Language = lang
            });
        }
Ejemplo n.º 2
0
        public void GetEventsHereNow(long id, string location, DateTime now, string language)
        {
            string formattedTime   = now.ToString("yyyy-MM-ddTHH:mm:sszzz");
            string locationfilter  = "str(?location) = \"" + location + "\"";
            string startdatefilter = "?startdate < \"" + formattedTime + "\" ^^ xsd:dateTime";
            string enddatefilter   = "?enddate > \"" + formattedTime + "\" ^^ xsd:dateTime";
            string query           = DataConstants.GetQuery("base") + string.Format(DataConstants.GetQuery("EventsNowHere"), locationfilter, startdatefilter, enddatefilter);

            //System.Console.WriteLine(query);
            endpoint.QueryWithResultSet(query, new SparqlResultsCallback(callback), new CallbackData {
                Id = id, Language = language
            });
        }
Ejemplo n.º 3
0
        public void callback(SparqlResultSet results, Object u)
        {
            try
            {
                List <Event>  events = new List <Event>();
                IMessengerApi api    = RestClientBuilder.GetMessengerApi();
                //System.Console.WriteLine("Query Callback");

                if (results.Count > 0 && u is CallbackData)
                {
                    CallbackData user = (CallbackData)u;
                    //System.Console.WriteLine("Found Results");
                    foreach (SparqlResult res in results)
                    {
                        try
                        {
                            Event e = ResultParser.GetEvent(res);
                            events.Add(e);
                            //System.Console.WriteLine("Datum: " + e.startDate);
                            //System.Console.WriteLine("Dend: " + e.endDate);
                        } catch (Exception ex)
                        {
                            System.Console.WriteLine(ex);
                        }
                    }
                    rm.SendTextMessage(user.Id, DataConstants.GetMessage("Found", user.Language));
                    //System.Console.WriteLine(JsonConvert.SerializeObject(CarouselFactory.makeCarousel(user.Id, events, user.Language)));
                    String result = api.SendMessageToUser(CarouselFactory.makeCarousel(user.Id, events, user.Language)).Result;
                }
                else if (u is CallbackData)
                {
                    CallbackData user = (CallbackData)u;
                    rm.SendNoEventFound(user.Id, user.Language);
                    rm.SendConfirmation(user.Id, user.Language);
                }
                else if (u is VDS.RDF.AsyncError)
                {
                    VDS.RDF.AsyncError error = (VDS.RDF.AsyncError)u;
                    CallbackData       user  = (CallbackData)error.State;
                    string             hmess = DataConstants.GetMessage("Error", user.Language);
                    rm.SendTextMessage(user.Id, hmess);
                }
                // System.Console.WriteLine("End of query method");
            }
            catch (Exception ex)
            {
                System.Console.WriteLine(ex);
            }
        }
Ejemplo n.º 4
0
 public void GetEventByName(string locationName, long id, string lang)
 {
     try
     {
         string formattedTime = DataConstants.Now.ToString("yyyy-MM-ddTHH:mm:sszzz");
         string query         = DataConstants.GetQuery("base") + string.Format(DataConstants.GetQuery("SearchByName"), locationName.ToLower(), formattedTime);
         //System.Console.WriteLine(query);
         endpoint.QueryWithResultSet(query, new SparqlResultsCallback(callback), new CallbackData {
             Id = id, Language = lang
         });
     }catch (Exception ex)
     {
         System.Console.WriteLine(ex);
     }
 }
Ejemplo n.º 5
0
        public void GetEventsAtTime(long id, string date, string language)
        {
            string startdatefilter = "?startdate < \"" + date + "\" ^^ xsd:dateTime";
            string enddatefilter   = "?enddate > \"" + date + "\" ^^ xsd:dateTime";
            List <SearchableLocation> locations = DataConstants.Locations;
            string locationFilters = "str(?location) = \"" + locations[0].Id + "\"";

            for (int i = 1; i < locations.Count; i++)
            {
                locationFilters += " || str(?location) = \"" + locations[i].Id + "\"";
            }
            string query = DataConstants.GetQuery("base") + string.Format(DataConstants.GetQuery("EventsNowHere"), locationFilters, startdatefilter, enddatefilter);

            // System.Console.WriteLine(query);
            endpoint.QueryWithResultSet(query, new SparqlResultsCallback(callback), new CallbackData {
                Id = id, Language = language
            });
        }
Ejemplo n.º 6
0
        public void GetEventsNow(long id, string lang, DateTime time)
        {
            string formattedTime   = time.ToString("yyyy-MM-ddTHH:mm:sszzz");
            string startdatefilter = "?startdate < \"" + formattedTime + "\" ^^ xsd:dateTime";
            string enddatefilter   = "?enddate > \"" + formattedTime + "\" ^^ xsd:dateTime";
            //filter over defined locations only
            List <SearchableLocation> locations = DataConstants.Locations;
            string locationFilters = "str(?location) = \"" + locations[0].Id + "\"";

            for (int i = 1; i < locations.Count; i++)
            {
                locationFilters += " || str(?location) = \"" + locations[i].Id + "\"";
            }
            string query = DataConstants.GetQuery("base") + string.Format(DataConstants.GetQuery("EventsNowHere"), locationFilters, startdatefilter, enddatefilter);

            //System.Console.WriteLine(query);
            endpoint.QueryWithResultSet(query, new SparqlResultsCallback(callback), new CallbackData {
                Id = id, Language = lang
            });
        }