Jump to content

Dundurs

Members
  • Posts

    83
  • Joined

  • Last visited

Reputation Activity

  1. Like
    Dundurs reacted to Matt for a blog entry, QOTW: This week we talk home automation   
    This week, we were inspired to discuss home automation after @Joel R raised the question in a topic.
    With so many commercial options available now, such as Alexa, Siri and Google Home, we started discussing what automation we have in our homes. This week we'll focus on the a few team members who have heavily automated teams. Although @bfarber's answer "I have kids to help automate the home" was a clear winner.
    Marc S (Support technician & cycle injury enthusiast)
    For me I just have Hive, which is automation for my central heating system, and an Echo. So I can tell my heating to switch on and off by speaking to the echo if I wish, but to be honest its very rare that I do so. I tend to just use my phone, as it would rely on me being in the same room as my echo. 
    I have some lights which are on sensors in my en-suite, and in my entrance hall. I have thought about getting bulbs I can switch on and off with voice control, but I'm honestly not sure how much they would be used in comparison to what they cost to buy. Because of the way my lights are configured, it would cost a fortune to do (for example my living room would need 5 bulbs for the main light). If I decided to go down that route, I would be looking for lightswitch adaptations, rather than bulbs.
    Andy  (Developer and Support technician)
    This is a hobby of mine so might be a long answer! When I fully renovated my apartment I took the opportunity to go wild and put structured cabling and do all the prep work for a complete system. I use a system designed and manufactured by a company in my local area (Idratek.com) as the “controller” which handles heating, lighting, presence detection, intercoms, door locks etc and binds everything together. I installed everything myself and in total used about 2km worth of cat5e wiring with hidden magnetic reed switches recessed in door and window jams. I’ve then extended this by adding integrations with other things such as Hue lighting, automated curtains, zoned heating, a smart kettle and cameras etc. A particular favourite of mine is the integration with Logitech Squeezebox. If somebody rings the doorbell or calls me on Skype then the volume automatically decreases in the room I’m in so I can take the call.

    This system goes beyond the mainstream ad hoc automation kits such as Hue and other retail “smart” products in that it’s not just motion detection but presence. So for example if you’re in a room and the doors and windows are closed the system knows you are in that room until the door is opened. So if you’re sat still reading the light won’t turn off on you but it will still turn off automatically as soon as you leave. There’s no relying on extended 10 minute time outs. Lighting is controlled using internal and external light level sensors too so there’s no messing about adjusting the on/off times with seasonal changes.

    The system has all the usual smartphone controls but the idea is that it is truly “smart” in that once set up there is little intervention required. Heating is weather compensated for example and although curtains open automatically once the sun comes up, they won’t do so if you’re still in the room to prevent inadvertent flashing to neighbours. If you open a window in a room then the radiators in that room and connecting rooms are automatically switched off so you’re not wasting money heating the outside. I like to kid myself that I’m saving money but in reality the money I have spent probably exceeds any savings I will make in two lifetimes. So if I’m not saving money at least I’m being eco friendly whilst having some fun seeing how far I can push the tech.
    Mark W (The Senior Developer)
    I'm not as crazy as Andy, but I do have quite a bit of stuff:
    All the lights in the house are Hue. These are coupled with motion sensors (Hue motion sensors which also handily double as temperature and light sensors) but for completeness, I took all of the light switches off the walls, replaced the switches with a blank plate which I then added Hue Dimmer Switches on top of - this means that I can still use "normal" light switches when I want to. I have a Hive thermostat, and wrote a Homebridge plugin (https://github.com/mark-wade/homebridge-hive) to allow me to control it with Homekit, which is what I use to tie all my stuff together (Homebridge itself is running on a Raspberry Pi) I have a coffee machine and kettle from Smarter, which I also have Homebridge plugins for. Every room has a Sonos (Play:1 in bedroom and bathroom, Play:3 in office, kitchen and living room), again with Homebridge plugins I have automation set up to:
    Turns the lights and music on and off as I move throughout the house Turn the coffee machine on after I go into my office in the morning Turn everything off and turn the thermostat down once everyone has left the house But, because I use Homekit to tie it all together, I also use Siri quite a lot. "Hey Siri, turn the coffee machine on" literally never gets old.
    I'd really like to get a smart door lock and window blinds, but I'm still waiting for products that are actually decent to arrive on the market (there's a lot of US-centric stuff available, but here in the UK we normally need to wait a bit longer).
     
    Mark H (Support Technician and part-time Phil)
    I use an ISY-994i by Universal Devices, which controls *almost* all lights in the house, the door locks (Schlage Z-wave), and is integrated with my: 
    Elk security system OneLink fire/CO alarms 3 Raspberry PI's with temperature sensors (DS2482-100 I2C to 1-Wire IC)  Logitech Harmony Davis weather station (Vantage Pro 2)
    The mobile App I use to control this all, is Orchestrated Mobilinc.
    Daniel (Support Technician and Developer)
    A Raspberry Pis running HomeBridge
    2 Amazon Dots + 3 Logitech Harmony Hubs & Elite Controllers allow me to control everything via remote controls, phone or voice.
    Lights: Hue
    Sound: Sonos in all rooms
    I have also dozen of homekit compatible sockets to control some none smart devices via the system.
    The Harmony Hub but also the Raspberry allow me also to control Dyson Fans.
    Since I moved to a Samsung Phone it's quite a mess because I had to find an alternative to control the homekit stuff
    Quite clearly, giving developers a box of gadgets and some spare time can lead to very creative things. Do you have any home automation? Do you prefer Alexa to Google Home? Do you also want to move into Andy's house? Let us know.
     
  2. Like
    Dundurs reacted to Matt for a blog entry, QOTW: What was your first computing memory?   
    This week, the team have been discussing their very first computing memory. This will probably reveal a lot about the age of some of our team. We recently worked out that when Matt and Charles first met and started producing community software, some of the younger members of our team were still in primary school.
    What is your first computing memory?
    An easy question for tech-heads as we've all been toying with computers since our earliest days.
    Brandon (Senior tech support and development)
    We had a VIC20 and a Commodore128 growing up. In 6th grade I got into BASIC a little bit and wrote my own home-grown computer program for my school's science fair on the Commodore. It had a 'moon' and a rocket ship sprite, and the sprite flew around the screen and landed into the moon, ending with a quit or play again option. I won the science fair that year.

    Mark H (Tech support)
    My first "Computing Memory"...... that would be the mainframe I got to play with in 10th grade, one which some wealthy benefactor donated to my Junior High School, 1970. Magnetic core memory and drum memory, and not a transistor to be found within it..
     

    Marc S (Tech Support)
    First memory of an actual computer, rather than just a games console, would be the Atari 65XE. My parents got me one for Christmas, along with a few different books and games. My parents were expecting me to hit the games the second I got it, and instead I was copying out the code for making the computer 'Do things'. I guess that was my introduction to programming at the time. 

    Rhett (Cloud Support)
    "Learning "Basic" on an Apple II in College with 5 1/4 floppies! followed by building my first PC, a 386DX 40, then doing home banking via dial up and dos prompts"
     

    Matt (Senior Developer)
    The BBC Micro. It was a computer developed for the classroom to encourage a nation of coders. My dad brought one home along with a magazine and we spent all night typing in a Star Trek game from the magazine and debugged it together. I still have nightmares over my brother reading it out and calling a full colon "a double dot". I loved that machine and often tinkered with it between playing games and using it for homework. I remember writing a Naughts and Crosses (tic-tac-toe) game in school that my teacher did not understand and assumed I had cheated. Special shout out to "Elite" the space trading game that stole most of my youth.

    Ryan (Senior Developer)
    My first real computing memory was on a Packard Bell running Windows 3.11. I performed my first "echo" at the MS-DOS Command Line, and it was all downhill from there. 
     


    Andy (Senior tech support and development)
    My first computing memory is probably playing Sim City on the BBC micro at school aged 6 or 7 but computers were a part of family life from before I was born so I must have had some interactions before this I can’t remember. My first Internet memories were getting home from school aged 10 helping dad build PC motherboards he designed from scratch. I would help place the components before they were soldered and then I would get to use the single machine set up in the corner which had the Mosaic browser and then later the first version of Netscape Navigator installed. I still have an original Internet Movie Database account from 1993. This was probably also my first “Job”. I’m still waiting for my first pay packet!

    Jennifer (Designer)
    My first really strong memory of computers in general was a Mac. It was Oregon Trails at school with those huge 5 1/2 floppy disks. I always remember how excited I would be to see that black and green screen with that 8 bit old west adventure. True facts. If there was a modern like Conan Exiles survival game that was Oregon Trail based I would most probably get it. If it exists don't tell me about it!

    Daniel (Senior tech support and development)
    My first coding experience was in the school with really, really old DOS computers.. No Basic, No Pascal ... it was the famous TURTLE aka LOGO!
     
    Stuart (Senior tech support and development)
    My first real computer related memory was having a Commodore 64 and an early Amiga with Theme Park. For some reason we also had an external drive for the Amiga that meant we could copy games. After that it was a steady progression of Windows based PCs and now I've got a "large" Laptop that everyone at IPS loves to joke about.

  3. Like
    Dundurs reacted to Rikki for a blog entry, New: Clubs   
    This entry is about our IPS Community Suite 4.2 release.
    We are happy to introduce the next major feature that will be available in IPS Community Suite 4.2 - Clubs.
    Clubs are a brand new way of supporting sub-communities within your site. Many people have requested social group functionality in the past and Clubs are our implementation of this concept. Let's take a look at a few screenshots, and then go over what they are capable of doing.

    The Club directory

    A Club homepage

    Club member listing

    Example of content within a club (topics, in this case)
    There's a lot to digest there! Let's go over the basic functionality.
     
    Club Types
    Four types of club are available:
    Public clubs
    Clubs that anyone can see and participate in without joining. Open club
    Clubs that anyone can see and join. Closed club
    Clubs that anyone can see in the directory, but joining must be approved by a Club Leader or Club Moderator. Non-club-members who view the club will only see the member list - not the recent activity or content areas. Private club
    Clubs that do not show in public, and users must be invited by a Club Leader or Club Moderator As the site admin, you can of course configure which club types can be created and by whom. You could, for example, allow members to create public and open clubs, but allow a "VIP" group to also create Closed and Private clubs.

    Admin configuration option for Club creations
     
    Club Users
    Each club has three levels of user:
    Leader
    A leader has all of the permissions of a moderator, and can add other moderators. They can also add content areas (see below). The club owner is automatically a leader. Moderators
    Moderators, as the name implies, have the ability to moderate content posted within the club. As the site administrator, you can define which moderator tools can be used. You could, for example, prevent any content being deleted from clubs, but allow it to be hidden. Moderators can also remove members from a club. Users
    Anyone else that joins the club.
    Defining the moderator permissions available to club moderators
    Your site administrator and moderators, with the appropriate permissions, are able to moderator content in any Club regardless of whether they are a member of it. 
    Clubs can be created by any user who has permission. As you would expect, this is controlled by our regular permission settings.
    For closed clubs, there's an approval process. Users can request to join and the request must be approved by a leader. Leaders get a notification when a user requests to join; the user gets a notification when their request is approved or denied.

    Approving and declining join requests
     
    Club Content
    Club Leaders can add a variety of content areas to their club - forums, calendars, blogs and so on. It's important to note that these content areas are fully functional just as if they existed as a top-level admin created area. They will appear in search results, activity streams, users can follow them, embed links to them, and so on. If a user has permission to see a forum (for example) within a club it will behave exactly like other forums they see - and the same for all other kinds of content.
    Each content area a leader adds can have a custom title, and will appear in the club navigation. This means, for example, that you can have multiple forums within a club, and give each a different name.

    Adding content areas to a club
     
    Club Custom Fields
    Clubs also support custom fields. Custom fields are defined by the site administrator and can be filled in by Club Owners. The values they enter are shown (along with the club description) on the club homepage.

    Custom fields in a club
    On the Club Directory page, users can filter by the custom club fields.

    Filtering clubs
     
    Club Locations
    Clubs have built-in support for Google Maps, allowing users to specify a physical location for their club. Let's say you run a community for car enthusiasts; each club might be tied to a particular region's meetup. The Club Owner specifies the location when setting up the club, and clubs are then shown on map on the directory page:

    Club locations
    And within a club, the location is shown too:

     
    Club Display
    We offer two ways to display club headers within the club - the standard way, shown in the screenshots you've seen up to this point, but we also have a sidebar option. This is something the admin sets globally for the site, rather than per-club. This is useful where your site design doesn't facilitate another horizontal banner taking up valuable screen real-estate; moving the club banner to the sidebar alleviates this pressure on vertical space.

    Sidebar club style
    Using Clubs in Other Ways
    There's a lot of scope for using clubs beyond allowing users to create their own groups. You do not even have to call them "clubs" if that does not suit your use case. For example, on a company intranet you could rename Clubs to "Departments", and create a private group for each of your main roles. This would allow each department to have its own community, with its own forums, gallery, file sharing and so on, private and separate from other departments.
    Similarly, they'd also work well in situations where you as the site admin want to create entire micro-communities. Take for example a video game publisher. Using Clubs, they could create a micro-community for each of their games, complete with forums, galleries and so forth, and then set the Clubs directory as their overall community homepage. Immediately, they have a setup that hasn't until now been possible out-of-the-box with IPS Community Suite.
     
    We expect our clients will come up with some really innovative uses for the new Club functionality, and we can't wait to see what you do. We'd love to hear your feedback - let us know what you think in the comments.
  4. Like
    Dundurs reacted to bfarber for a blog entry, New: Gallery Lightbox Navigation   
    This entry is about our IPS Community Suite 4.2 release
    Improvements to our Gallery application, both in terms of new functionality and minor enhancements, are coming in 4.2. One area that was identified early on for improvement was the Gallery image view page and specifically how the lightbox feature available on this page behaved.
    We adjusted the buttons that overlay the main Gallery image to use icons instead of text

     
    If you click to view an alternative image size, we improved the header styling of this page as well for clarity and to allow easier downloading of the image you are viewing

     
    When viewing an image, you can open the image in a lightbox by clicking the icon at the very top far right corner. When doing so, there was previously a button at the bottom left hand corner of the lightbox if you wanted to download the image. We modernized this experience by implementing an overlay that you can click on in order to download the full size image instead.

     
    You will notice there are now left/right arrows in the lightbox view here. You can click left/right to scroll through the images in the container, just as if you clicked through the images in the photostrip immediately below the image on the main page. You can also use the left/right arrow keys on your keyboard. While this would navigate through the photostrip previously, it will now also navigate through the images in the lightbox as well.
    When viewing on your mobile device, the lightbox has been cleaned up allowing more image to display which is a welcome change for your mobile users.
    We have more changes coming to Gallery in 4.2 which we will be revealing soon but in the mean time we hope you enjoy these useful improvements.
  5. Like
    Dundurs reacted to Rikki for a blog entry, New in 4.1.12: Post preview   
    We are currently beta testing our next release, 4.1.12, which contains hundreds of bug fixes, dozens of improvements, as well as a handful of new features. I wanted to introduce one of those new features: post preview.
    Long-time users of our software will know that a post preview function was a standard feature, but we took the decision to not include it in the initial IPS4 release. It had a couple of drawbacks:
    it only applied to certain pages, such as topic view - other WYSIWYG editors simply didn't get a preview the workflow wasn't very good for modern web apps, requiring a round-trip to the server and a full page refresh When IPS4 was released, we felt that the built-in rendering of the editor was a sufficient preview of how the end result would appear. However, while analyzing ongoing customer and user feedback for IPS4 in its first year of release, we have seen that a preview still has a use. There are some circumstances when a true WYSIWYG experience is just not possible such as using more advanced formatting (like LaTeX) or when admins create certain custom editor plugins.
    As a result, we rethought post preview. We wanted to ensure that all editors could be previewed, and that it didn't have a clunky workflow. In addition, since IPS4 uses a responsive theme, we wanted to give users the opportunity to preview how their post would look on different devices.
    Here's the result, and what will be available in 4.1.12:

    Post preview in IPS Community Suite 4.1.12
    The preview is shown by clicking a new button on the toolbar (meaning it can be moved, removed, etc. just like the other default buttons). When the preview loads, the toolbar allows the user to resize it to different device sizes. If they are on desktop, they can also view it at tablet at phone sizes; on a tablet, it can also be viewed at phone size.
    So now we not only show a true preview of what content will look like when posted, but we also allow you to preview how it will look on other devices. Of course that preview is just a best-guess since different devices have different window sizes but it does give you an idea.
    We hope this reimagining of an old feature for a more modern web will please end-users and make posting content a more accurate process. Stay tuned for more updates on what's included in 4.1.12!
    Version 4.1.12 is currently in beta testing and should be released in the next two weeks.
  6. Like
    Dundurs reacted to Rikki for a blog entry, Theme Tip: Create custom error pages with the Pages app   
    When IPS4 encounters an error (be it a simple 404 Not Found or a more complex configuration issue), the user sees a standard built-in error page. That's fine in many cases, but did you know you can create your own error page using our Pages app?
    This is a particularly good approach for communities that use Pages for their website too. If you have built a website theme, the standard error page may not fit with your visual style, so building your own error page allows you to improve it. You might want to show some helpful links to other parts of your website, for example.
     
    Creating your error page
    The first step is creating your error page in Pages. Note that for this page, you must create a manual page - the Page Builder tool can't be used in this case.
    In order to show the error on your page, there's two special tags you should insert in the page content. When your page is shown in response to an error, Pages will swap out these tags for the relevant text. They are:
    {error_code}
    Replaced with the technical error code for this error. This code identifies the exact piece of code that triggered the error, and can be given to IPS support technicians to help diagnose problems. {error_message}
    Replaced with a human-friendly description of the error that occurred.  
    Configuring Pages to use the error page
    Next, set Pages to display the error page. You do this in the Pages section; click the Advanced Settings button, and select your page from the list. Note that this will replace all error pages across the suite - not just errors triggered by Pages itself!
     
    Have a request for a theme tip? Let us know in the comments and we'll try and help out in a future tip! 
     
  7. Like
    Dundurs reacted to Rikki for a blog entry, Theme Tip: Use HTML logic to display content to specific groups   
    HTML Logic is our name for the additional tags available in IPS4's templates that allow runtime logic to be executed. It comprises if/then/else statements as well as loops and more.
    Since HTML Logic has access to all of the underlying PHP framework in IPS4, it's very powerful and a lot can be achieved with it. One common use is to limit certain content within a template to particular member groups. Let's see how that might be done.
     
    Showing or hiding content only to guests
    We'll first look at a simpler idea: showing or hiding content specifically to guests (i.e. anyone who isn't logged in). Within IPS4, the \IPS\Member::loggedIn() object contains information about the current user. Guests always have a member_id of NULL (i.e. no value), so we can simply check that value in our logic tag:
    {{if \IPS\Member::loggedIn()->member_id === NULL}} This content *only* shows to guests, since they have a NULL member_id. {{endif}} {{if \IPS\Member::loggedIn()->member_id}} This content *only* shows to logged-in users since their member_id is a number, which will equal true. {{endif}}  
    Showing content only to specific groups
    Let's go a bit further and this time show content to specific (primary) member groups. First, you need to get the IDs for the group(s) you want to deal with. You can find this by editing the group in the AdminCP, and making a note of the id parameter in the URL. On my installation, the Administrator group is ID 4 so we'll use that in our example.
    Once again, we're using the \IPS\Member::loggedIn() object, but this time we're using the member_group_id property.
    {{if \IPS\Member::loggedIn()->member_group_id === 4}} This content only shows to members in the "Administrators" group (ID 4 in our example) {{endif}}  
    Working with multiple groups at once
    Following the code above, you could simply repeat the check against \IPS\Member::loggedIn()->member_group_id several times, for each ID you want to allow. However, since our templates allow arbitrary PHP expressions to be used, there's a neater way: use an array of member group IDs you want to allow, and check against that using PHP's in_array function. Here's an example where we only show content to group IDs 2, 4 and 6:
    {{if in_array( \IPS\Member::loggedIn()->member_group_id, array( 2, 4, 6 ) )}} This content only shows to members in groups with the ID 2, 4 or 6. {{endif}}  
    Have a request for a theme tip? Let us know in the comments and we'll try and help out in a future tip! 
  8. Like
    Dundurs reacted to Charles for a blog entry, IPS Community Suite 4.1.9 Available   
    We have released version 4.1.9 with many bug fixes, performance improvements, and feature enhancements. Our thanks to the QA team and all our clients who participated in the beta release.
    This is also a security release so please upgrade as soon as possible. All Suites will see the red alert banner show.
    To be notified of updates as soon as they are available you can add an email address in your AdminCP under General Configuration.
     
    New or Changed Features
    When your link auto-embeds in a post such as with an image, YouTube video, Twitter link, etc. an option will now display to revert the embed back to a plain text link if you do not want the embed. New setting to disable embedding. Facebook/Twitter integration improvements If you are an administrator and encounter a system error, additional debug output will now display. Regular members will see the normal error message. Custom Fields for Support Requests in Commerce now show on the front-end. If an advertisement is set up with a main image, but not smaller images for tablets/mobiles, the ad would not show at all on tablets/mobiles. This has changed so the main image will display on all devices unless smaller images are provided. Topics scheduled to automatically lock or unlock will now reflect this in the topic listing and when viewing the topic. Placing a link to a Facebook status will embed when possible. When viewing a report, the container (for example, the forum) the content is from is displayed. Three character searches are now allowed in the Admin CP Live Search. The Account Settings page now uses vertical rather than horizontal tabs to prevent overflow. If Gravatar is enabled, and a user has not defined an profile photo, then their email address will be used to fetch from Gravatar unless explicitly set not to. Gfycat embeds now use their oEmbed endpoint rather than their JS API. Using Amazon CloudFront as https provider will now be recognized as valid secure connection. The member REST API endpoint will now return custom fields. The Developer Center for Plugins now shows the filename in the list of hooks, and when editing a hook, a breadcrumb includes a link back to the list. Inline notifications can now be dismissed Efficiency improvements to the search index You can now close a poll independently of the topic You may want to read a bit more on our embed improvements:
    And Activity Stream improvements:
    We are well into development on version 4.1.10 which will follow along soon. Keep an eye on our Release Notes for updates on what will be coming in that release.
    If you have any issues please open a support ticket. You can also submit reports to our bug tracker. Thank you!
  9. Like
    Dundurs reacted to Rikki for a blog entry, Theme Tip: Apply CSS to specific Pages databases   
    When you use custom templates for a Pages database, you'll often need custom CSS to go along with it to provide the styling. There's two main ways of doing this:
    CSS files within Pages
    Pages allows you to create CSS files, and then associate them with particular custom pages of your community (you create these in the AdminCP, under Pages > Templates > CSS). So simply create your CSS file, and associate it to the page that your database is displayed on.
    The benefit of this method is it applies to all themes, so it's great if you want your database to look the same on all themes. Of course, this is also the drawback - you can't easily use it for per-theme customization.
    Targeting the database classname in theme CSS
    Alternatively, you can target the database classname in your normal theme CSS files. When a database is inserted into a page, IPS4 helpfully adds a classname to the body element, which makes it really simple to style that page in particular. If your database key is myDatabase, then the classname added to the body element would be cCmsDatabase_myDatabase. Use this in your selectors and you can style everything exactly how you need:
    .cCmsDatabase_myDatabase .ipsButton_important { /* Style important buttons differently in this database, for example */ } Combine both methods!
    Of course, you can use both approaches when it makes sense. Create a CSS file within Pages for the basic structural styling that will apply regardless of which theme the user uses, and then in each theme target the database classname to customize it for that particular theme - perfect for the colors, font family and so on.
×
×
  • Create New...