Referenzsuche für Bibliotheken

Hallo,

wenn man viele Bibliotheken(Module) installiert hat, dann fragt man sich nach einiger Zeit, wofür man denn das ein oder andere Modul installiert hat und ob es man es überhaupt noch benutzt bzw. benötigt.

Gibt es eine einfache Möglichkeit, das herauszufinden? Oder hat sich schon mal jemand etwas gebastelt zum Suchen?

Also so etwas wie: IPS_GetLibraryList() ->IPS_GetLibraryModules() -> IPS_GetModule()[‚Implemented‘]->IPS_GetInstanceListByModuleID

Mich würde es sehr interessieren.

Gruß

Burkhard

Ok, wenn keiner was hat.

Ich habe es mal so umgesetzt:

<?php

foreach (IPS_GetLibraryList() as $libraryGUID){

    if ($libraryGUID === '{0945206A-47AA-4FDD-9093-99051E410E82}'){ // Built-In
        continue;
    }

    echo $libraryGUID . ' - ' . IPS_GetLibrary($libraryGUID)['Name'].  PHP_EOL;

    foreach (IPS_GetLibraryModules($libraryGUID) as $moduleGUID){

        $instanceList = IPS_GetInstanceListByModuleID($moduleGUID);
        $instanceStringList = implode(', ', $instanceList);
        echo sprintf('    %s  -  %s - %s (%s)' . PHP_EOL, $moduleGUID, IPS_GetModule($moduleGUID)['ModuleName'], count($instanceList), $instanceStringList);
    }

    echo PHP_EOL;
}

Die Ausgabe sieht dann so aus:


{1DA49A4F-0B05-47F8-949F-52B922B042FB} - IPSymconIFTTT
    {2E91373A-E70B-46D8-99A7-71A499F6783A}  -  IFTTTIO - 1 (37572)
    {7CBB8C1B-6A40-4DE8-9882-D505B76BA09D}  -  IFTTT - 1 (10088)
    {B88FA10D-CCCA-483A-BAE2-01FEF13E7DD3}  -  IFTTTSplitter - 1 (31350)

{8D3B2699-9F10-4782-8636-3E722E8122CC} - Polly
    {B91A47C9-A1FC-451C-BCCC-AD03910D14B9}  -  Polly - 1 (39220)

{A1010F08-607C-4718-83B8-25C5153F2D3B} - Enigma2BY
    {A2938F57-E1E2-427A-92FA-5F43EFF1F3FF}  -  Enigma2BY - 1 (10130)

{A3DE75F0-9B71-4720-AC4F-3760184DD151} - IRiS Erkennung
    {D0BB7294-39A6-4C8B-AF57-A10719EA796F}  -  IRiSErkennung - 1 (33251)

{4AD5DAC7-0A63-4554-A3DC-A2F3CCC3B9E7} - iCalendar reader and notifier
    {F22703FF-8576-4AB1-A0E7-02E3116CD3BA}  -  iCal Calendar Notifier - 2 (49452, 50025)
    {5127CDDC-2859-4223-A870-4D26AC83622C}  -  iCal Calendar Reader - 6 (59072, 37478, 41483, 56714, 36780, 23543)

Es werden die GUID, der Name, die Anzahl der Referenzen und in Klammern die Objekt-IDs ausgegeben.

Vielleicht kann es mal jemand gebrauchen.

Gruß

Burkhard

PS: bitte nach „Nützliche PHP Skripte“ verschieben.